黑马程序员技术交流社区

标题: ----------定时器---------- [打印本页]

作者: syusouki    时间: 2015-9-28 22:59
标题: ----------定时器----------
本帖最后由 syusouki 于 2015-9-29 22:15 编辑

作用:                                
  1.可以在指定的时间做指定的事情;                                
  2.可以从指定的时间开始,每间隔指定的时间,做指定的事情;                                
                                 
Java中的定时器:                                
  1.java.util.TimerTask(抽象类):定义任务;                                
          1).自定义类,继承自TimerTask;                        
          2).重写run()方法;                        
  2.java.util.Timer(类):定义"定时器":                                
          1).构造方法:Timer();                        
          2).定时器方法:                        
                  public void schedule(TimerTask task, long delay):是在指定的delay延迟之后,启动task               
                  public void schedule(TimerTask task,long delay,long period):在指定的delay延迟之后,开始,并每隔period时间重复的做task               
                                 
                                 
class MyTimerTask extends TimerTask {                                
        private Timer timer;                        
                                
        public MyTimerTask(Timer t) {                        
                this.timer = t;               
        }                        
                                
        @Override                        
        public void run() {                        
                for (int i = 0; i < 10; i++) {               
                        System.out.println("i = " + i);        
                }               
                // this.timer.cancel();//如果要指定"重复",就不能停止;               
        }                        
}                                
                                
public class Demo {                                
        public static void main(String[] args) {                        
                Timer timer = new Timer();               
                System.out.println("启动定时器,2秒后开始......");               
                // timer.schedule(new MyTimerTask(timer), 1000  2);               
                timer.schedule(new MyTimerTask(timer), 1000  2, 1000);               
        }                        
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2