java的Timer类可以用来实现在某一个时间或某一段时间后执行或重复执行某一个任务,每一个Timer对象对应一个线程,因此计时器执行的任务应该迅速完成,否则可能会造成延迟。
要执行具体的任务,则必须使用TimerTask类,这个类是一个抽象类,必须自己建立一个类来继承它,并实现其中的抽象方法。
下面的例子是定时打印一句话。
1、自定义TimerTask子类
public class MyTask extends TimerTask{
private String name;
public MyTask(String name){
this.name=name;
}
@Override
public void run() {
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("name:"+name+",date:"+sdf.format(new Date()));
}
}
2、编写测试类
public class TaskTest {
public static void main(String[] args) {
Timer timer=new Timer();
MyTask task=new MyTask("hello");
timer.schedule(task, 1000, 2000);//一秒后开始,每2秒重复
}
}
精彩科技工作室