定时器的作用
1) 可以安排自动的计划任务的类, 每个任务都是一个线程
2) 创建Timer 实例
3) 为Timer 实例增加计划任务, 计划任务是一个接口
4) 使用cancel() 清除timer 对象上所有计划任务
定时器任务(TimerTask)
1)它是一个抽象类;
2)要通过子类覆盖run()方法;
3)它的子类实现要作为一个参数传给定时器;
4)由定时器调用run()方法;
举例说明
定时三秒后打印
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {//定时器要做的事情写在run方法
System.out.println("三秒后打印输出");
}
},3000);
定时五秒后打印,每隔一秒打印一次
timer.schedule(new TimerTask() {
@Override
public void run() {//定时器要做的事情写在run方法
System.out.println("五秒后打印输出,每隔一秒重复输出");
}//五秒后输出,每隔一秒重复输出
},5000,1000);
指定日期打印
Calendar c = Calendar.getInstance();
c.set(2021,1,4,10,29);
Date time = c.getTime();
timer.schedule(new TimerTask() {
@Override
public void run() {//定时器要做的事情写在run方法
System.out.println("指定日期,每隔一秒重复输出");
}//五秒后输出,每隔一秒重复输出
},time,1000);
总结:
定时器的任务要写在TimerTask()对象的run()方法中,相当于开启了一个线程监视定时器,当达到条件时自动执行。