Java - Timer 的详细介绍
来源:互联网 发布:黑五买什么知乎 编辑:程序博客网 时间:2024/05/16 11:42
Timer的详细使用方法和介绍
Java Timer API http://www.apihome.cn/api/java/timer.html
效果展示:(方案2,4,5)
*效果图暂时上传不了,之后补上,也可自行运行
源码如下:
import java.util.Timer; import java.util.TimerTask;import java.util.Calendar;import java.util.Date;import java.text.SimpleDateFormat;import java.awt.Toolkit;//方案1,定时5s后执行任务/*public class Java_Timer{ Timer timer; public Java_Timer(int seconds){ timer = new Timer(); timer.schedule(new RemindTask(), seconds*1000); } class RemindTask extends TimerTask{ public void run(){ System.out.println("Time''s up!"); timer.cancel(); //Terminate the timer thread } } public static void main(String args[]){ System.out.println("About to schedule task."); new Java_Timer(5); System.out.println("Task scheduled."); //此处的打印信息会立即执行,没有等待上步执行完成 } }*///方案2:实现指定时间的执行任务,并且打印出当前的时间/*public class Java_Timer{ //设置指定的时间 Timer timer; public Java_Timer(){ Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.HOUR_OF_DAY,15); calendar.set(Calendar.MINUTE,51); calendar.set(Calendar.SECOND,33); Date time = calendar.getTime(); timer = new Timer(); timer.schedule(new RemindTask(), time); } class RemindTask extends TimerTask{ public void run(){ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式 System.out.println(df.format(new Date()));// new Date()为获取当前系统时间 System.out.println("Time''s up!"); timer.cancel(); //Terminate the timer thread } } public static void main(String args[]){ System.out.println("About to schedule task."); new Java_Timer(); System.out.println("Task scheduled."); //此处的打印信息会立即执行,没有等待上步执行完成 } }*///方案3:5s定时时间到了,发出蜂鸣声----类似于方案1/*public class Java_Timer{ Timer timer; Toolkit toolkit; public Java_Timer(int seconds){ toolkit = Toolkit.getDefaultToolkit(); timer = new Timer(); timer.schedule(new RemindTask(), seconds*1000); } class RemindTask extends TimerTask{ public void run(){ System.out.println("Time''s up!"); toolkit.beep(); //timer.cancel(); //Terminate the timer thread System.exit(0); } } public static void main(String args[]){ System.out.println("About to schedule task."); new Java_Timer(5); System.out.println("Task scheduled."); //此处的打印信息会立即执行,没有等待上步执行完成 } }*///方案4:1s定时反复执行-----Success/*public class Java_Timer{ Timer timer; Toolkit toolkit; public Java_Timer(){ toolkit = Toolkit.getDefaultToolkit(); timer = new Timer(); timer.schedule(new RemindTask(), 0, 1000); } class RemindTask extends TimerTask{ int count = 4; public void run(){ if(count > 0) { System.out.println("Beep"); toolkit.beep(); count--; } else{ System.out.println("End"); System.exit(0); } //timer.cancel(); //Terminate the timer thread } } public static void main(String args[]){ System.out.println("About to schedule task."); new Java_Timer(); System.out.println("Task scheduled."); //此处的打印信息会立即执行,没有等待上步执行完成 } }*///测试:实现的事20s定时,发出声响,并且显示定时的效果 == (每间隔1s就输出一次时间,直到20次)public class Java_Timer{ Timer timer; Toolkit toolkit; public Java_Timer(){ toolkit = Toolkit.getDefaultToolkit(); timer = new Timer(); timer.schedule(new RemindTask(), 0, 1000); } class RemindTask extends TimerTask{ int count = 15; public void run(){ if(count > 0) { //System.out.println("Beep"); toolkit.beep(); System.out.println("00:00:"+count); count--; } else{ System.out.println("I Love you & Forever"); System.exit(0); } //timer.cancel(); //Terminate the timer thread } } public static void main(String args[]){ System.out.println("\t\t15s倒计时"); new Java_Timer(); System.out.println("Task scheduled."); //此处的打印信息会立即执行,没有等待上步执行完成 } }
1 0
- Java - Timer 的详细介绍
- timer的使用介绍
- Java JNI的详细介绍
- java的WeakHashMap详细介绍
- java Timer与TimerTask的真正原理&使用介绍
- 黑马程序员---java中Timer类的介绍以及使用
- Timer定时器的用法介绍
- Java的Timer原理
- java timer的使用
- java timer的用法
- java的定时器(Timer)
- Java的Timer原理
- java Timer的使用
- Java Timer的使用
- java Timer的使用
- Java Timer的使用
- java Timer的使用
- JAVA timer的基本知识
- A0101- 开发工具篇
- “玲珑杯”ACM比赛 Round #4 B Best couple
- JavaSwing入门和布局管理
- 布局在ScrollView下不能铺满的问题
- Android 6.0 运行时权限简单处理
- Java - Timer 的详细介绍
- 洛谷 P1279 字串距离
- (翻译)Shaders for Game Programming and Artists--Chapter 1
- 关于switch语句的一个小代码
- 云计算与虚拟化工具之KVM
- 【Java每日一题】20161110
- VMware ESXI 搭建
- MyBatis 通配,实现数据的增删改查
- 使用多fragment出现的错乱或不显示问题