📄 testtimer.java~36~
字号:
package socket.test.timer;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
public class TestTimer {
private int iHour=11,iMinute=39,iSecond=0;//凌晨1点启动
private Timer timer = null;
private TimerTask timerTask = null;
private final static int PERIOD = 1 * 60 * 60 * 1000;
private Calendar cal=Calendar.getInstance();
public TestTimer() {
timer = new Timer();
timerTask = new MyTask();
}
public void scheduleTask() {
//Calendar cal = Calendar.getInstance();
cal.getTime();
cal.set(cal.HOUR_OF_DAY,iHour);
cal.set(cal.MINUTE,iMinute);
cal.set(cal.SECOND,iSecond);
timer.schedule(timerTask, cal.getTime(), PERIOD);
}
//---------------------------------------取消任务-----------------------------------//
public void cancel() {
timer.cancel();
}
public void runTimerTask()
{
new TimerRun().run();//一个用于隔一段时间打印次数据的类
}
//--------------------不运行本RUN方法因为TimerRun类绑定了它自己的run方法-----------------------//
public void run()
{
System.out.println("TestTimer的run方法运行!");
}
//----------------------------用于执行定时任务的内部类-----------------------------------//
private class MyTask extends TimerTask {
public void run() {
Calendar curCal=Calendar.getInstance(); //当前时间
if(( curCal.getTime().getHours()==iHour)&&(curCal.getTime().getMinutes()>=iMinute)){
System.out.println("定时程序启动:");
//-----------------------------调用要做的动作------------------------------------------//
new TestTimer().runTimerTask();
System.out.println("定时程序执行完毕!");
}else{
//System.out.println("时间不对");
}
}
}
public static void main(String [] args)
{
TestTimer timer=new TestTimer();
timer.scheduleTask();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -