用了线程里面一个定时器类TimerTask,
定时器方法schedule,
Date获取时间,
simpleDateformat设置格式,
字符串和时间相互转换的方法parse和format。
话不多说上代码吧:
package demo03;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class TimerTest01 {
public static void main(String[] args) throws ParseException {
//new一个定时器
Timer timer=new Timer();
SimpleDateFormat s=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//格式化时间
Date date=s.parse("2020-4-27 18:10:00");//把字符串转为时间对象
//定时任务
//timer.schedule(定时任务,第一次执行时间,间隔多久执行一次);
timer.schedule(new LogTimerTask(),date,1000*60*60*24);//间隔一天执行一次
}
}
//日志的定时任务
class LogTimerTask extends TimerTask {
@Override
public void run() {
SimpleDateFormat s=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//格式化时间
String s1=s.format(new Date());
System.out.println(s1+"请求调用System.gc垃圾回收机制!");
}
}