Runtime类和Timer类

一、Runtime类

每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。

static Runtime getRuntime()
          返回与当前 Java 应用程序相关的运行时对象。
 Process exec(String command)
          在单独的进程中执行指定的字符串命令。

该类构造方法私有化,只能通过静态方法getRuntime()获取实例

Runtime r = Runtime.getRuntime();			//获取运行时对象
//r.exec("shutdown -s -t 300");
r.exec("shutdown -a");

二、Timer类

一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。

Timer()
          创建一个新计时器。
Timer(boolean isDaemon)
          创建一个新计时器,可以指定其相关的线程作为守护程序运行。
Timer(String name)
          创建一个新计时器,其相关的线程具有指定的名称。
Timer(String name, boolean isDaemon)
          创建一个新计时器,其相关的线程具有指定的名称,并且可以指定作为守护程序运行。
 void schedule(TimerTask task, Date time)
          安排在指定的时间执行指定的任务。
 void schedule(TimerTask task, Date firstTime, long period)
          安排指定的任务在指定的时间开始进行重复的固定延迟执行
 void schedule(TimerTask task, long delay)
          安排在指定延迟后执行指定的任务。
 void schedule(TimerTask task, long delay, long period)
          安排指定的任务从指定的延迟后开始进行重复的固定延迟执行
public class Demo{
	public static void main(String[] args) throws InterruptedException {
		Timer t = new Timer();
		//在指定时间安排指定任务
		//第一个参数,是安排的任务,第二个参数是执行的时间,第三个参数是过多长时间再重复执行
		t.schedule(new MyTimerTask(), new Date(188, 6, 1, 14, 22, 50),3000);	
		
		while(true) {
			Thread.sleep(1000);
			System.out.println(new Date());
		}
	}

}
class MyTimerTask extends TimerTask {

	@Override
	public void run() {
		System.out.println("起床背英语单词");
	}
}

猜你喜欢

转载自blog.csdn.net/qq_40298054/article/details/87927309