Java中常用来处理时间的三个类:Date、Calendar、SimpleDateFormate,以及Java中的单例设计模式:懒汉式、饿汉式以及静态内部类式

(一)java.util.Date类

    1.该类有一个long类型的属性:用来存放时间,是用毫秒数的形式表示,开始的日期是从1970年1月1号 00:00:00.

      2.该类的很多方法都已经过时,不建议使用,对日期进行操作,建议使用Calendar类

    3.Date d=new Date() 创建一个表示当前的日前Date对象,然后我们通过Calendar类来对他进行操作,例如:进行日期的加减

 

(二)java.util.Calendar类

      该类是一个抽象类,通过Calendar.getInstance()获得它的子类对象,Calendar cal=Calendar.getInstance(),然后通过cal.setTime()方法,传入一个Date类型参数,然后就可以通过cal这个对象实现对日期的操作,具体的可以查看API,主要了解这个类的作用,是用来实现对日期进行操作,如果没有想要的方法,可以去查看它的子类GregorianCalendar的API

 

(三)java.util.SimpleDateFormat类

   1.该类的作用是通过特定的模板,显示特定格式的日期,说的在简单一些,就是给人看的时间,因为Date类里面存放的是long类型的数据,计算机可以看的明白,但是人就不行。

     2.该类的具体用法:先看下面一对代码

      运行效果:

      说明:SimpleDateFormat类的构造器,可以传入一个模板,用字符串形式表示,具体的字符含义看下图:  最后在调用format()方法,就可以返回字符串形式表示的特定格式的日期时间

 

 

 (四)单例设计模式:保证一个类只有一个实例对象,并且提供一个访问该实例的全局访问点

    1.懒汉式,看下面代码:

      说明:实现了延时加载,正在用的时候在调用,不过方法需要同步,效率就低下了

 

    2.饿汉式,看下面代码:

 

    说明:加载这个类的时候,就会创建该类对象,不能实现延时加载,天然的线程安全,方法不用同步,效率高

        3.静态内部类,看下面代码:

 

      说明:线程安全,实现了延时加载,在调用的时候在加载内部类,加载的时候创建外部类对象,由于类只会被加载一次,天然的线程安全,效率也高

 

 

posted on 2017-04-15 19:58  真亦假  阅读(1997)  评论(0编辑  收藏  举报

导航