📅  最后修改于: 2023-12-03 15:27:33.212000             🧑  作者: Mango
Java 中的计时器允许我们在指定的时间间隔执行任务。线程 Java 计时器技术可以让我们实现这样的功能,在指定的时间间隔内执行特定的任务。
Java 中的 Timer 类提供了一个简单的框架来实现计时器功能。Timer 类执行我们指定的任务,而且可以让我们指定任务在将来某一时刻执行。
Timer 类的常用构造方法如下:
Timer()
Timer(boolean isDaemon)
Timer(String name)
Timer(String name, boolean isDaemon)
在 Java 中,计时器任务由 TimerTask 类来表示。TimerTask 类是一个抽象类,我们不能直接实例化它,而是需要继承该类并实现它的 run() 方法来实现计时器任务。
例如,下面的代码演示了如何实现一个简单的计时器任务:
import java.util.TimerTask;
public class MyTask extends TimerTask {
public void run() {
System.out.println("Hello! Timer Task is executing.");
}
}
我们可以使用 Timer 类的 schedule() 方法来创建计时器。该方法的语法如下:
void schedule(TimerTask task, Date time)
void schedule(TimerTask task, long delay)
void schedule(TimerTask task, long delay, long period)
void schedule(TimerTask task, Date firstTime, long period)
例如,下面的代码演示了如何创建一个计时器,并使用它来调度一个计时器任务:
import java.util.Timer;
import java.util.Date;
public class MyTimer {
public static void main(String[] args) {
// 创建计时器
Timer myTimer = new Timer();
// 创建计时器任务
MyTask myTask = new MyTask();
// 使用计时器调度任务
myTimer.schedule(myTask, new Date(), 1000);
}
}
上面的代码将创建一个计时器,该计时器会在每隔 1000 毫秒(1 秒)执行一次 MyTask 类中的 run() 方法。
在 Java 中,我们可以使用 Timer 类的 cancel() 方法取消计时器。该方法的语法如下:
void cancel()
例如,下面的代码演示了如何创建一个计时器,并使用它来调度一个计时器任务。然后取消该计时器:
import java.util.Timer;
import java.util.Date;
public class MyTimer {
public static void main(String[] args) {
// 创建计时器
Timer myTimer = new Timer();
// 创建计时器任务
MyTask myTask = new MyTask();
// 使用计时器调度任务
myTimer.schedule(myTask, new Date(), 1000);
// 取消计时器
myTimer.cancel();
}
}
上面的代码将创建一个计时器,该计时器会在每隔 1000 毫秒(1 秒)执行一次 MyTask 类中的 run() 方法。然后,我们将使用 cancel() 方法取消该计时器。