/*特性: 如果预定时间早于现在时间立即执行
* Timer类是负责计划任务功能的线程
* 但是封装任务的类却是TimerTask
* Timer.schedule(TimerTask timertask,Date time);//指定日期执行一次
* Timer.schedule(TimerTask timertask,Date firsttime,long Period);//指点日期一次 然后每隔Period秒运行一次
* Timer timer=new Timer(true);//设置程守护线程 一旦线程休息就结束
* this.cancel();//将继承TimerTask的类,从队列中取消掉
* Timer.cancel();将所有任务清空 及队列中的任务为null 有的时候该方法不一定执行停止任务因为Timer.cancel()方法没有真抢到队列锁
* Timer.schedule(TimerTask tiemrtask,long delay);//延迟几秒后执行常用与Android的界面之间的切换
* Timer.schedule(timertask,long delay,long Period);//在该任务延迟delay秒后 在每延迟Period秒执行一次且是无限的执行
* Timer.scheduleAtFixedRate(timertask,delay,Period);//与上一个方法的不同之处在于追赶执行性
* 在Timer的方法中有延迟和不延迟重点可以理解一下
* 在Timer类中的应用对字符串的日期格式化
* SimpleDateFormat sdf=new SimpleDateFormat("....");//其中的具体内容就不讲解了
* sdf.prase(str);//返回的Date对象
*/
/*
*基本框架的实现
*/
package line;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
class mytimertask extends TimerTask{
@Override
public void run() {
System.out.println("mytimertask的执行时间是:"+new Date());
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public class timertask {
public static void main(String args[]) {
Timer timer=new Timer();//Timer(true)//表示守护线程 false表示为不是 可以自己试试
mytimertask m=new mytimertask();
System.out.println("现在时间为"+new Date());//
timer.schedule(m, 1000,1000);//m是参数timertask 1000->leday 仅仅是Timer一种方法的调用
}
}
//小编就此粗略的谈一下 下一篇更详细吧