• 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. Jenkins +Ant +Jmeter(apache-jmeter-5.1.1)自动化性能测试平台

    1.安装配置好Jdk, 下载网址:https://www.cr173.com/soft/33894.html 2.Jmeter下载地址:http://jmeter.apache.org/downloa ...

  2. laravel的Validation检索验证错误消息

    基本用法 处理错误消息 错误消息和视图 可用的验证规则 有条件地添加规则 自定义错误消息 自定义验证规则 基本用法 Laravel提供了一个简单.方便的工具,用于验证数据并通过validation类检 ...

  3. 认识Flow(一)

    Flow 是 facebook 出品的 JavaScript 静态类型检查工具.Vue.js 的源码利用了 Flow 做了静态类型检查,所以了解 Flow 有助于我们阅读源码. 为什么用 Flow J ...

  4. Token:服务端身份验证的流行方案

    01- 身份认证 服务端提供资源给客户端,但是某些资源是有条件的.所以服务端要能够识别请求者的身份,然后再判断所请求的资源是否可以给请求者. token是一种身份验证的机制,初始时用户提交账号数据给服 ...

  5. dijkstra算法为什么不能处理带有负边权的图

      1 2 3 1 0 8 9 2 10 0 10 3 10 -2 0 先看样例再解释,看邻接矩阵会发现, 如果用dijkstra算1-2的最短路因为贪心思想所以得到的结果是8,但明显可以看到1-3- ...

  6. CQYZOJ P1392 拔河问题

    题目\(1\) Description 一个学校举行拔河比赛,所有的人被分成了两组,每个人必须(且只能够)在其中的一组,且两个组内的所有人体重加起来尽可能地接近. Input 第\(1\)行是一个\( ...

  7. 剑指offer 面试题40. 最小的k个数

    O(N)划分法,注意这个方法会改变原数据(函数参数是引用的情况下)!当然也可以再定义一个新容器对其划分 要求前k小的数,只要执行快排划分,每次划分都会把数据分成大小两拨.直到某一次划分的中心点正好在k ...

  8. mysql数据库事务的操作与理解

    --------------------事务----------------------------------------------查询mysql事务隔离级别1.查看当前会话隔离级别select ...

  9. java基础之 开发环境配置

    一.Window 第一步:下载JDK 首先,我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/download ...

  10. ubuntu18.04双卡机安装ubidia驱动遇到的坑

    在ubuntu 18的软件更新中选择英伟达驱动进行安装,输入nvidia-smi总是提示缺少驱动,未驱动之类的报错. 何解? 最初以为安装系统的问题,重装ubuntu也未果. 最后查了很多资料,找到一 ...