日期与时间:
一、java中的时间:
(1)java采用标准类库中的date类型时间,使用距离一个固定时间点的毫秒数来表示
(2)固定时间点即纪元(UTC),也就是1970年1月1日0时0分0秒
(3)UTC,GMT都是世界通用的时间格式
(javase:标准版本的jdk,即类库为基本类库
javaee:企业版本的jdk,基本类库满足不了企业开发的需求,因此此jdk中,含有其他与企业开发相关的类库
javame:移动版本的jdk,jdk中含有与移动端开发的类型)
二、Date类型
java.util.Date类型,封装了日期与时间的信息,之后里面的很多功能都弃用,渐渐的,使用Calender类型来替代
(1)构造器
Date();创建一个封装当前系统时间的Date对象
Date(long time):
创建一个距离纪元time毫秒的时间
(2)方法(删除线的都是弃用方法,不建议使用)
long getTime();
返回距离纪元的毫秒数
void setTime(long time);
修改时间对象的毫秒数
=================================================
SimpleDateFormat:
此类型可以对Date进行格式化,即将字符串转成Date类型
构造器:
SimpleDateFormat(String format);
作用:创建一个指定格式的SimpleDateFormat对象
常用方法:
String format(Date date)
将参数Date按照构造器的格式,格式化成字符串
Date parse(String str);
将指定的字符串str转换成Date类型
常用格式:
yy:
yyyy:年
MM:月
dd:日
hh:(12制)
HH:(24制)
mm:分
ss:秒
am:上下午
E:星期
=================================================
Calender(抽象类):
(1)是日历类型,此类型封装了有关于日历的所有信息,主要用于计算时间分量
时间分量:日期和时间的一部分有效值
(2)Calender是一个抽象类,提供了一个方法getInstance()来获取一个通用的子类型对象,一般都是GregorianCalender(格里高历,阳历)类型对象
(3)时间分量常量:
static int YEAR
static int MONTH :日历里的月份是0-11
static int DATE
static int DAY_OF_WEEK :日历里的星期从周日开始(1-7)
static int DAY_OF_MONTH
...
(4)类型中提供了get(int field)方法,通过制定时间分量常量来获取相应的时间分量的值
(5)提供了set(int field, int value)方法,进行设置时间分量值
(6)提供了add(int fiald, int value)方法
用于增加对当前日历信息通过时间分量来计算value后的日历信息
其他方法:
Date getTime():将日历对象转成Date对象
void setTime(Date date);将指定date日期转成日历对象的信息
int getActualMinimum(int field) :获取指定时间分量所在的最大值
如:
指定Calendar.MONTH,获取的是11,即12月份
Calendar.DATE,获取的是当前日历对象所在月天数的最大值