制作自己盈利的网站,外贸网站平台有哪些,商业网站的相关内容,秦皇岛汽车网站制作定时器的应用1、 定时器主要涉及到两个类(java.util包中)-》public class Timer extendsObject(一种工具#xff0c;线程用其安排以后在后台线程中执行的任务。可安排任务执行一次#xff0c;或者定期重复执行。 )--public abstract class TimerTask extendsObjectimple…定时器的应用1、 定时器主要涉及到两个类(java.util包中)-》public class Timer extendsObject(一种工具线程用其安排以后在后台线程中执行的任务。可安排任务执行一次或者定期重复执行。 )--public abstract class TimerTask extendsObjectimplementsRunnable(由 Timer 安排为一次执行或重复执行的任务。)2、Timer类的构造方法构造方法摘要String name)创建一个新计时器其相关的线程具有指定的名称。String name, boolean isDaemon)创建一个新计时器其相关的线程具有指定的名称并且可以指定作为守护程序运行。与每个 Timer 对象相对应的是单个后台线程用于顺序地执行所有计时器任务。计时器任务应该迅速完成。如果完成某个计时器任务的时间太长那么它会“独占”计时器的任务执行线程。因此这就可能延迟后续任务的执行而这些任务就可能“堆在一起”并且在上述不友好的任务最终完成时才能够被快速连续地执行。对 Timer 对象最后的引用完成后并且 所有未处理的任务都已执行完成后计时器的任务执行线程会正常终止(并且成为垃圾回收的对象)。但是这可能要很长时间后才发生。默认情况下任务执行线程并不作为守护线程 来运行所以它能够阻止应用程序终止。如果调用者想要快速终止计时器的任务执行线程那么调用者应该调用计时器的cancel 方法。如果意外终止了计时器的任务执行线程例如调用了它的 stop 方法那么所有以后对该计时器安排任务的尝试都将导致IllegalStateException就好像调用了计时器的 cancel 方法一样。此类是线程安全的多个线程可以共享单个Timer 对象而无需进行外部同步。此类不 提供实时保证它使用 Object.wait(long) 方法来安排任务。实现注意事项此类可扩展到大量同时安排的任务(存在数千个都没有问题)。在内部它使用二进制堆来表示其任务队列所以安排任务的开销是 O(log n)其中 n 是同时安排的任务数。实现注意事项所有构造方法都启动计时器线程。方法摘要voidintvoidTimerTask task,Date time)安排在指定的时间执行指定的任务。voidTimerTask task,Date firstTime, long period)安排指定的任务在指定的时间开始进行重复的固定延迟执行。voidTimerTask task, long delay)安排在指定延迟后执行指定的任务。voidTimerTask task, long delay, long period)安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。voidTimerTask task,Date firstTime, long period)安排指定的任务在指定的时间开始进行重复的固定速率执行。voidTimerTask task, long delay, long period)安排指定的任务在指定的延迟后开始进行重复的固定速率执行。3、TimerTask类的构造方法构造方法摘要protected方法摘要booleanabstract voidlong实际 执行的已安排 执行时间。实例1import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class TimerTest {/*** param args*/public static void main(String[] args) {// TODO Auto-generated method stub//每隔10s打印hello,honey!;new Timer().schedule(new TimerTask(){Overridepublic void run() {// TODO Auto-generated method stubSystem.out.println(hello,honey!);}}, 10000);while(true){System.out.println(new Date().getSeconds());//打印当前秒数try {Thread.sleep(1000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}实例2import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class TimerTest {/*** param args*/public static void main(String[] args) {// TODO Auto-generated method stub//每隔10s打印hello,honey!;new Timer().schedule(new TimerTask(){Overridepublic void run() {// TODO Auto-generated method stubSystem.out.println(hello,honey!);}}, 10000,3000);//10s后打印以后每隔3s打印一次/*while(true){System.out.println(new Date().getSeconds());//打印当前秒数try {Thread.sleep(1000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}*/}}运行结果