1.新建一个java项目,里面新建两个类,整体的框架如图所示:


2.MyTimer.java里面的代码如下所示:

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Timer;

public class MyTimer {

	public static void main(String[] args) {
		Timer timer = new Timer();
		MyTimerTask myTimerTask = new MyTimerTask("Number 1.");
		Calendar calendar = Calendar.getInstance();
		SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		System.out.println(sf.format(calendar.getTime()));
		calendar.add(Calendar.SECOND, 3);
		myTimerTask.setName("schedule");
		// schedule(task,delay)等待delay之后执行且执行一次task
		timer.schedule(myTimerTask, 1000);
	}

}

3.MyTimerTask.java里面的代码如下所示:

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.TimerTask;

public class MyTimerTask extends TimerTask {

	private static String name;

	public MyTimerTask(String inputName) {
		name = inputName;
	}

	@Override
	public void run() {
		Calendar calendar = Calendar.getInstance();
		SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		System.out.println("Current exec time is:" + sf.format(calendar.getTime()));
		System.out.println("Current exec name is:" + name);
	}

	public static String getName() {
		return name;
	}

	public static void setName(String name) {
		MyTimerTask.name = name;
	}

}

4.运行得到定时结果:


更多推荐

java定时schedule(task,delay)