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. 爬虫5 html下载器 html_downloader.py

    #coding:utf8 import urllib2 __author__ = 'wang' class HtmlDownloader(object): def download(self, url ...

  2. JQuery中serialize()、serializeArray()和param()方法示例介绍

    在项目中做form表单提交的时候,如果参数比较少,可以通过jquery一个个取得,但是当 form表参数很多的情况下,还是一一取得的话无疑是加大了工作量,那我们需要咱们获取到表单的所有参数呢,幸好,j ...

  3. Redis总结(二)C#中如何使用redis

    上一篇讲述了安装redis<Redis总结(一)Redis安装>,同时也大致介绍了redis的优势和应用场景.本篇着重讲解.NET中如何使用redis和C#. Redis官网提供了很多开源 ...

  4. How to convert any valid date string to a DateTime.

    DateTimeFormatInfo pattern = new DateTimeFormatInfo() { ShortDatePattern = "your date pattern&q ...

  5. EF DbModelBuilder

    protected override void OnModelCreating(DbModelBuilder modelBuilder) { var model = modelBuilder.Buil ...

  6. AspnetIdentitySample

    https://github.com/rustd/AspnetIdentitySample http://www.asp.net/web-forms/overview/getting-started/ ...

  7. vs2013 支持C#6.0 Install-Package Microsoft.Net.Compilers

    vs2013 支持C#6.0  Install-Package Microsoft.Net.Compilers

  8. Python之路【第八篇】python实现线程池

    线程池概念 什么是线程池?诸如web服务器.数据库服务器.文件服务器和邮件服务器等许多服务器应用都面向处理来自某些远程来源的大量短小的任务.构建服务器应用程序的一个过于简单的模型是:每当一个请求到达就 ...

  9. 给各位聚聚和大大介绍一个开源项目 Expression2Sql(转)

    阅读目录 一.Expression2Sql介绍 二.单表简单查询 三.Where条件 四.多表关联查询 五.group by 六.order by 七.函数 八.delete 删除 九.update ...

  10. json的中括号和大括号的使用?

    参考这篇文章: http://www.cnblogs.com/sgdkg/archive/2012/12/03/2799723.html json 变量有两种可能, 可能是一个对象, (类似 类的实例 ...