首页 > 技术文章 > javax.swing.Timer类实现定时任务操作

liuxuelin 2018-12-16 15:43 原文

1.定义一个工作类,让它实现ActionListener接口,并重写actionPerformed(),在这个方法中编写定时执行的代码:

public class WorkJob implements ActionListener {

    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("At the tone, the time is " + new Date());  //定时打印当前时间
        Toolkit.getDefaultToolkit().beep();  //响一声

    }

}

2.创建Timer类,指定间隔时间和工作类:

public class TimmerTest {
    
    public static void main(String[] args) {
        Timer timmer=new Timer(3000, new WorkJob());  //3000为间隔时间,单位是毫秒  //第二个参数为上面定义的工作类
        
        timmer.start();  //开启定时器,//开始后,每3秒执行一次WorkJob中的actionPerformed方法中的代码
    JOptionPane.showMessageDialog(null, "Quit program?");   //开启后弹框询问是否停止
    System.exit(
0);  //停止虚拟机
   }
}

运行上面代码后,弹框提示是否停止,控制台会每隔三秒打印当前时间并响一声,知道点击弹框中的"确定"按钮

 

推荐阅读