借助两个简单的类Timer和TimeTask即可轻松完成。
定时器:
Timer(在java.util包中,注意javax.swing包中也有Timer类)
Timer类的两个主要函数:
public void cancel();//Terminates this timer, discarding any currently scheduled tasks.
public void schedule(TimerTask task,long delay,long period);//注意有好几种重载形式
参数说明:
task - task to be scheduled.
delay - delay in milliseconds before task is to be executed.
period - time in milliseconds between successive task executions.
大致过程:
TimeTask是一个抽象类(也在java.util包中),有抽象函数
public abstract void run(),目的在于用来让子类重写,即将自定义的想完成的任务代码放到此函数中,
每当设定的条件满足时便自动调用此方法。
下面是一个最精简的定时器示例:
import java.util.Timer;
import java.util.TimerTask;
public class Test
{
public static void main(String[] args)
{
Timer timer = new Timer() ;//生成一个定时器
timer.schedule(new MyTask(), 1000, 1000) ;//第一个参数是对象,每过1s便会自动调用run()方法
}
}
class MyTask extends TimerTask //将自定义的完成指定任务的类继承自TimerTask
{
public void run()
{
System.out.println("hello, world.") ;
}
}
星期六,2014年11月8日