java中的计时器

   在我们日常生活中,我们常常会遇到有关计时器的事情。例如京东商城会在某年某月某日某时某分某秒进行特价活动,那么当时间到达这个时间点上的时候该事件就会触发。

   总所周知,JAVA中给我们提供了很多类库,然而计时器的问题我们简单的就会用到Timer类与TimerTask类。 

   Timer是一种定时器工具,用来在一个后台线程计划执行指定任务。它可以计划执行一个任务一次或反复多次。
TimerTask一个抽象类,它的子类代
表一个可以被Timer计划的任务。

  首先我们要说JAVA中计时器的运作过程,首先我们会建立一个类来继承TimerTask类,继而实现TimerTask中的run方法。

              

在此处我们新建了一个haoshibu类(本人比较随意,因为我认为程序可以反射出生活中的各种各样的事务,随心走就好),其中重写了run方法,其中我们用到了SimpleDateFormat来规范化时间的显示格式,具体的SimpleDateFormat我们会在相关的具体章节中讲到。在此方法中我们输出了三次当前时间,calcel函数用来终止此任务。那么我们又是怎么用Timer将此TimerTask实现类中的运行起来从而实现定时器的特性呢。

           

在此处我们首先定义了一个具体的时间点,long ll=date.parse("8/15/2017 11:00:00");Date date1=new Date(ll);然后用Timer对象的schedule方法将haoshi(也就是实现了TimerTask类的对象),具体的时间点,一秒延迟(也就是1000L)封装起来。具体实现的结果就是,由当前程序启动的时间点起程序运行,但是不会有反应,耐心等待就好,等着到达我们设定好的时间点的时候程序就会调用haoshi中的run方法执行3次输出时间的语句,每句间隔一秒钟,三次以后结束,这样就达到了我们的目的。上方的设置时间点的相关详情可在其他章节中解释。

           

      由于我又重新设定了时间点"8/17/2017 17:57:00"所以结果如上方所示。这只是简单的一些操作,具体的就是教大家怎么来完成这样的小功能,除了当前的schedule方法还有很多其他的重载方法,大家感兴趣可以自己尝试。



  • 8
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值