1 import java.util.Calendar;  
 2 import java.util.Date;  
 3 import java.util.Timer;  
 4 import java.util.TimerTask;  
 5   
 6 public class Test {  
 7     public static void main(String[] args) {  
 8         //timer1();  
 9         timer2();  
         //timer3();  
         //timer4();  
     }  
   
     // 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time)  
     public static void timer1() {  
         Timer timer = new Timer();  
         timer.schedule(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, 2000);// 设定指定的时间time,此处为2000毫秒  
     }  
   
     // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行  
     // schedule(TimerTask task, long delay, long period)  
     public static void timer2() {  
         Timer timer = new Timer();  
         timer.schedule(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, 1000, 1000);  
     }  
   
     // 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。  
     // scheduleAtFixedRate(TimerTask task, long delay, long period)  
     public static void timer3() {  
         Timer timer = new Timer();  
         timer.scheduleAtFixedRate(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, 1000, 2000);  
     }  
      
     // 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.  
     // Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)  
     public static void timer4() {  
         Calendar calendar = Calendar.getInstance();  
         calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时  
         calendar.set(Calendar.MINUTE, 0);       // 控制分  
         calendar.set(Calendar.SECOND, 0);       // 控制秒  
   
         Date time = calendar.getTime();         // 得出执行任务的时间,此处为今天的12:00:00  
   
         Timer timer = new Timer();  
         timer.scheduleAtFixedRate(new TimerTask() {  
             public void run() {  
                 System.out.println("-------设定要指定任务--------");  
             }  
         }, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行  
     }  
 }  

java定时器的几种用法[转]的更多相关文章

  1. (转) java定时器的几种用法

    package com.lid; import java.util.Calendar; import java.util.Date; import java.util.Timer; import ja ...

  2. java定时器的几种用法

    package com.lid; import java.util.Calendar; import java.util.Date; import java.util.Timer; import ja ...

  3. 【转】Java 枚举7常见种用法

    原文网址:http://softbeta.iteye.com/blog/1185573 Java 枚举7常见种用法 博客分类: java java枚举enmu  原创地址:http://blog.li ...

  4. Java 枚举7常见种用法

    DK1.5引入了新的类型--枚举.在 Java 中它虽然算个"小"功能,却给我的开发带来了"大"方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是:  ...

  5. Java枚举常见7种用法

    DK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便.用法一:常量在JDK1.5 之前,我们定义常量都是: publicstaticfianl…… .现 ...

  6. Java枚举7常见种用法

    DK1.5引入了新的类型——枚举.在Java中它虽然算个“小”功能,却给我的开发带来了“大”方便. 方法/步骤 用法一:常量 在JDK1.5之前,我们定义常量都是:publicstaticfianl. ...

  7. Java 枚举7常见种用法(转)

    JDK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl ...

  8. Java定时器的三种实现方式

    一.普通thread /** * 普通thread * 这是最常见的,创建一个thread,然后让它在while循环里一直运行着, * 通过sleep方法来达到定时任务的效果.这样可以快速简单的实现, ...

  9. Java 枚举常见7种用法

    用法一:常量 在JDK1.5 之前,我们定义常量都是: publicstaticfianl.....现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. publ ...

随机推荐

  1. UILabel UISwitch UISegmentedControl UIAlertView

    基础小控件 /***************************************UIlabel*************************************/ UILabel ...

  2. 20145212 《Java程序设计》第6周学习总结

    20145212 <Java程序设计>第6周学习总结 学习内容总结 第十章 1.Java将输入/输出抽象化为串流.读取数据对象成为输入流,能向其写入的对象叫输出流. 我从网上找到了一个可以 ...

  3. Spring MVC学习笔记——给Controller和视图传值

    一.给Controller传值,值将显示在控制台 1.第一种:使用@RequestParam,改HelloController.java //RequestMapping表示用哪一个url来对应 @R ...

  4. JavaWeb学习笔记——jsp:setproperty和getproperty

  5. Java数据结构——解析算术表达式

  6. lamp环境搭建(ubuntu)

    系统:Ubuntu14.04 方法一.最简单的在线安装 (参考网址:http://os.51cto.com/art/201307/405333.htm) 具体过程: [1]打开终端,执行命令 # su ...

  7. Why you shouldn't use Entity Framework with Transactions

    Links EntityFramework This is a .net ORM Mapper Framework from Microsoft to help you talking with yo ...

  8. windows下php连接sqlserver2008

    如果你需要和sql server通信需要到http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx自行下载微软提供的The SQL Server ...

  9. Java并发编程核心方法与框架-Fork-Join分治编程(一)

    在JDK1.7版本中提供了Fork-Join并行执行任务框架,它的主要作用是把大任务分割成若干个小任务,再对每个小任务得到的结果进行汇总,这种开发方法也叫做分治编程,可以极大地利用CPU资源,提高任务 ...

  10. Yii2-Redis使用小记 - Cache(转)

    前些天简单学习了下 Redis,现在准备在项目上使用它了.我们目前用的是 Yii2 框架,在官网搜索了下 Redis,就发现了yii2-redis这扩展. 安装后使用超简单,打开 common/con ...