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."); //此处的打印信息会立即执行,没有等待上步执行完成
}
}