• package com.wxltsoft.tool;
  •  
     
  •  
    import org.junit.Test;
  •  
     
  •  
    import java.util.Calendar;
  •  
    import java.util.Date;
  •  
    import java.util.Timer;
  •  
    import java.util.TimerTask;
  •  
     
  •  
    /**
  •  
    * @Author: Zhangbx
  •  
    * @Description:
  •  
    * @Date: 2017/12/5
  •  
    * @Modified By:
  •  
    * @Modified Date:
  •  
    */
  •  
    public class TimerUtil {
  •  
     
  •  
    public static void main(String[] args) {
  •  
    // timer1();
  •  
    // timer2();
  •  
    // timer3();
  •  
    timer4();
  •  
    }
  •  
     
  •  
    /**
  •  
    * 设定2000毫秒后执行
  •  
    */
  •  
    public static void timer1(){
  •  
    Timer nTimer = new Timer();
  •  
    nTimer.schedule(new TimerTask() {
  •  
    @Override
  •  
    public void run() {
  •  
    System.out.println("----设定要指定任务-----");
  •  
    }
  •  
    },2000);
  •  
    }
  •  
     
  •  
    /**
  •  
    * 延迟5000毫秒,每1000毫秒执行一次
  •  
    */
  •  
    public static void timer2() {
  •  
    Timer timer = new Timer();
  •  
    timer.schedule(new TimerTask() {
  •  
    public void run() {
  •  
    System.out.println("-------延迟5000毫秒,每1000毫秒执行一次--------");
  •  
    }
  •  
    }, 5000, 1000);
  •  
    }
  •  
     
  •  
    /**
  •  
    * 延迟5000毫秒,每1000毫秒执行一次
  •  
    */
  •  
    public static void timer3() {
  •  
    Timer timer = new Timer();
  •  
    timer.scheduleAtFixedRate(new TimerTask() {
  •  
    public void run() {
  •  
    System.err.println("-------延迟5000毫秒,每1000毫秒执行一次--------");
  •  
    }
  •  
    }, 5000, 1000);
  •  
    }
  •  
    /**
  •  
    * 设置17:56执行任务
  •  
    * java.util.Timer.scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
  •  
    */
  •  
    public static void timer4() {
  •  
    Calendar calendar = Calendar.getInstance();
  •  
    calendar.set(Calendar.HOUR_OF_DAY, 17);
  •  
    calendar.set(Calendar.MINUTE, 26);
  •  
    calendar.set(Calendar.SECOND, 0);
  •  
     
  •  
    Date time = calendar.getTime();
  •  
     
  •  
    Timer timer = new Timer();
  •  
    timer.scheduleAtFixedRate(new TimerTask() {
  •  
    public void run() {
  •  
    System.out.println("-------设定要指定任务--------");
  •  
    }
  •  
    }, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行
  •  
    }
  •  
     
  •  
     
  •  
    }

Java实现定时器的四种方式的更多相关文章

  1. JAVA解析XML的四种方式

    java解析xml文件四种方式 1.介绍 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准.DOM是以层次结构组织的节点或信息片断的集合.这 ...

  2. java 遍历Map的四种方式

      java 遍历Map的四种方式 CreationTime--2018年7月16日16点15分 Author:Marydon 一.迭代key&value 第一种方式:迭代entrySet 1 ...

  3. Java创建线程的四种方式

    Java创建线程的四种方式 1.继承Thread类创建线程 定义Thread类的子类,并重写该类的run方法,run()方法的内容就是该线程执行的内容 创建Thread子类的实例,即创建了线程对象. ...

  4. java 20 -10 字节流四种方式复制mp3文件,测试效率

    电脑太渣,好慢..反正速率是: 高效字节流一次读写一个字节数组 > 基本字节流一次读写一个字节数组 > 高效字节流一次读写一个字节 > 基本字节流一次读写一个字节 前两个远远快过后面 ...

  5. java线程实现的四种方式

    java多线程的实现可以通过以下四种方式 1.继承Thread类,重写run方法 2.实现Runnable接口,重写run方法 3.通过Callable和FutureTask创建线程 4.通过线程池创 ...

  6. Java Array数组 遍历 四种方式(包含 Lambda 表达式遍历)

    示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...

  7. Java List集合 遍历 四种方式(包含 Lambda 表达式遍历)

    示例代码如下: package com.miracle.luna.lambda; import java.util.ArrayList; import java.util.List; /** * @A ...

  8. Java添加事件的四种方式

    Java添加事件的几种方式(转载了codebrother的文章,做了稍微的改动) /** * Java事件监听处理——自身类实现ActionListener接口,作为事件监听器 * * @author ...

  9. java遍历map的四种方式

    在Java中如何遍历Map对象 How to Iterate Over a Map in Java 在java中遍历Map有不少的方法.我们看一下最常用的方法及其优缺点. 既然java中的所有map都 ...

随机推荐

  1. phpstorm实现分屏展示代码

    第一种 选择你要分屏的页面 [Window]—>[Editor Tabs]—>[Split Vertically]or[Split Horizontally]  第二种 把鼠标箭头放到你想 ...

  2. Sublime Text(代码编辑软件)

    特点 Sublime Text 3是一个轻量.简洁.高效.跨平台的编辑器,方便的配色以及兼容vim快捷键等各种优点: 它体积小巧,无需安装,绿色便携:它可跨平台支持Windows/Mac/Linux: ...

  3. JavaScript 闭包浅析

    词法作用域 闭包 概念 作用 用法 待续 词法作用域 词法作用域是指一个变量在源码中声明的位置作为它的作用域.同时嵌套的函数可以访问到其外层作用域中声明的变量. 函数中的定义的局部变量只能由函数的内部 ...

  4. Win10镜像升级到其他版本

    写在前面 必须在MSDN下载VL版本系统,一定要是VL版本的. 下载镜像,将镜像中的sources/install.wim文件放到D盘下,可以放在其他路径,在命令中的路径就不同,再在D盘创建一个ima ...

  5. 复选框与bitmap算法实践

    bitmap(位图)算法 bitmap算法是利用数据二进制的每一位的值来表示数据的算法,可用来压缩保存数据集. 如何保存 如 5(int)的二进制表示为 101b,第一位和第三位的值是1就可以表示数据 ...

  6. mysql 中LIKE 与FIND_IN_SET 与关联表left join 速度效率比较

    有一张表Table有IDStr字段,如下只显示二个字段还有很多其他字段 方式一 字段逗号分割,直接用UserIDStr字段,里面存多个ID用逗号分割 UUID UserIDStr 1111 1,2,3 ...

  7. 番外:如何克隆可刷新的PDB(Refreshable PDB)

    基于版本:19c (12.2.0.3) AskScuti 创建方法:克隆创建 对应路径:属于克隆.PDB类型为:Refreshable 相关系列请参考<Oracle创建PDB列表文章> 注 ...

  8. adb shell 杀进程以及端口占用,adbserver服务重启失败

    linux: adb shell  ps |grep  netease 杀进程: adb shell kill [PID] //杀死进程 C:\Users\chenquan>adb shell ...

  9. Codeforces Round #615 (Div. 3) A-F简要题解

    contest链接:https://codeforces.com/contest/1294 A. 给出a.b.c三个数,从n中分配给a.b.c,问能否使得a = b = c.计算a,b,c三个数的差值 ...

  10. e.printStackTrace()打印在哪里以及如何e.printStackTrace()的内容打印在日志中

    1.e.printStackTrace()打印在哪里 在catch中的e.printStackTrace()将打印到控制台 2.e.printStackTrace()打印的内容是什么 如下代码: im ...