java指定时间的定时器
时间: 2023-11-12 07:05:28 浏览: 34
在Java中,可以使用Timer类和TimerTask类来创建定时器。以下是一个示例代码,可以指定时间来触发定时器。
```
import java.util.Timer;
import java.util.TimerTask;
import java.util.Calendar;
public class MyTimer {
Timer timer;
public MyTimer(int hour, int minute, int second) {
timer = new Timer();
Calendar date = Calendar.getInstance();
date.set(Calendar.HOUR_OF_DAY, hour);
date.set(Calendar.MINUTE, minute);
date.set(Calendar.SECOND, second);
timer.schedule(new MyTask(), date.getTime());
}
class MyTask extends TimerTask {
public void run() {
System.out.println("定时器已经触发");
timer.cancel(); //停止定时器
}
}
public static void main(String[] args) {
System.out.println("定时器开始");
new MyTimer(12, 0, 0); //指定12点触发定时器
}
}
```
在上面的代码中,创建了一个MyTimer类,其中构造函数接收三个参数,分别是小时、分和秒。使用Calendar类来设置定时器的触发时间。然后使用Timer类的schedule方法来启动定时器,并指定定时器任务为MyTask类。MyTask类继承了TimerTask类,实现了run方法,在定时器触发时执行该方法。在run方法中,可以编写定时器任务的具体逻辑。最后,使用timer.cancel()方法停止定时器的执行。在main方法中,创建了MyTimer类的实例,并传入了12点作为定时器触发时间。