zoukankan      html  css  js  c++  java
  • 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.静态内部类,看下面代码:

     

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

     

  • 相关阅读:
    css基础面试题
    hack-checkbox
    装饰性属性
    【CF809E】Surprise me!
    [SCOI2012]奇怪的游戏
    [HAOI2018]奇怪的背包
    CF1139D Steps to One
    [CTSC2018]假面
    写在省选前
    [SDOI2015]寻宝游戏
  • 原文地址:https://www.cnblogs.com/shangxinfeng/p/6715431.html
Copyright © 2011-2022 走看看