1:java.util.Timer类是一种工具,线程用其安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。
2:TimerTask类是由 Timer 安排为一次执行或重复执行的任务,因为有TimerTask类是一个抽象类,必须有其子类对其实现来完成定时任务的功能。
TimerCallClient .java客户端代码:
package com.skyon.gd.test;
import java.util.Timer;
/**
*
* @author sandy
*
*/
public class TimerCallClient {
public static void main(String[] args) {
run();
}
private static void run() {
Timer timer = new Timer();
NewTimerTask timerTask = new NewTimerTask();
//程序运行后立刻执行任务,每隔100ms执行一次
timer.schedule(timerTask, 0, 100);
}
}
NewTimerTask.java代码:
/**
*
*/
package com.skyon.gd.test;
import java.util.Random;
import java.util.TimerTask;
/**
* @author sandy
* TimerTask类是一个抽象类
*/
public class NewTimerTask extends TimerTask {
@Override
public void run() {
createRandomNumber();
createRandomNumberFromMathRandom();
}
//用纯Math中的方法来随机生成1-10之间的随机数
private void createRandomNumberFromMathRandom() {
int j=(int)(Math.round(Math.random()*10+1));
System.out.println("随机生成的数字为:"+j);
}
//用Random类的方式来随机生成1-10之间的随机数
private void createRandomNumber(){
Random random=new Random(System.currentTimeMillis());
int value=random.nextInt();
value=Math.abs(value);
value=value%10+1;
System.out.println("新生成的数字为:"+value);
}
}