具体类(和抽象类相对)java.util.Date(java.sql.Date)
抽象类java.text.DateFormat 和它的一个具体子类,java.text.SimpleDateFormat
抽象类java.util.Calendar 和它的一个具体子类,java.util.GregorianCalendar
具体类可以被实例化, 但是抽象类却不能. 你首先必须实现抽象类的一个具体子类。
Date类实际上只是一个包裹类, 它包含的是一个长整型数据, 表示的是从GMT(格林尼治标准时间)1970年, 1月1日00:00:00这一刻之前或者是之后经历的毫秒数。sql.Date是Date的一个子类,只用于数据库.sql.date.toString()表示yyyy-mm-dd.
sql.date和Date之间转化,java.sql.Date=new java.sql.Date(new java.util.Date().getTime());java.util.Date()=new java.util.Date(new java.sql.Date().getTime());
在Java语言中,表达时间的方式有两种:
a、绝对时间。以直观的形式来表达某个时间点,例如2009年10月10号0点0分0秒。使用这种形式表达时间,使用起来比较直观,但是不方便进行时间之间的计算。例如无法很直观的计算2020年1月1号0点0分0秒和上面这个时间之间相差多少天。绝对时间以对象的形式进行表达,Java API中提供了java.util包中的Date类和Calendar类的对象进行表达。
b、相对时间。以一个long型的数字表达某个时间点。例如102847423468。使用这种方式的优缺点和绝对时间刚好相反。这种方式很方便时间之间的计算,但是阅读起来很不直观。在Java API中以需要表达的时间点,例如2009年10月10号0点0分0秒,和GMT(格林威治时间,也就是伦敦时间)1970年1月1号0点0分0秒之间相差的毫秒数作为相对时间的数值,如果该时间在这个时间只好,则相对时间为正数,否则相对时间为负数。Java API中提供了java.lang包中的System类的currentTimeMillis方法,获得以相对时间形式描述的当前系统时间。
在转换时,使用Calendar类中的getTimeInMillis方法可以将Calendar对象转换为相对时间。在将相对时间转换为Calendar对象时,首先创建一个Calendar对象,然后再使用Calendar类的setTimeInMillis方法设置时间即可。
使用Date类可以创建日期/时间对象,使用DateFormat类,SimpleDateFormat类可以对Date对象进行格式化。
使用Calendar类可以设置和获取日期/时间数据的特定部分。Calendar中可以得到不同的时间如年,月等,更于走向国际化,所以大多数下用Calendar.
Date和Calendar输出的格式不怎么好,所以用SimpleDateFormate来输出
用SimpleDateFormat对象调用如下方法可以定制某时间输出格式:
public String format(Date date)
实例:
SimpleDateFormat sdf = new SimpleDateFormat(" 'time':yyyy-MM-dd");
System.out.println(sdf.format(date)); // time:2008-12-01
假如我们由一个文本字符串包含一个格式化了的日期对象,现在从这个字符串中解析日期数据创建一个日期对象。
使用SimpleDateFormat对象调用如下函数创建一个Date对象:
Date java.text.DateFormat.parse(String source)
实例:
String str="2008-12-1";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try{
Date date=sdf.parse(str);
System.out.println(date); //Mon Dec 01 00:00:00 CST 2008
}
catch(Exception ex){
System.out.println(ex.getMessage());
}
分享到:
相关推荐
Java 之 Date 和 Calendar 实例
java中时间类Date和Calendar的使用 java中时间类Date和Calendar的使用 <PRE class=java name="code">package cn.com; import java.text.DateFormat; import java.text.ParseException; import java.text....
Java 之 Date 和 CalendarJava 之 Date 和 Calendar
关于java中date和Calendar日期处理小结,包含一些常用方法等
本文是关于Date & Calendar类的总结。比较详细,.doc格式文件 。
Date与Calendar 两者的区别与联系
Date类顾名思义,一看就知道是和日期有关的类了,这个类最主要的作用就是获得当 前时间了,然而这个类里面也具有设置时间以及一些其他的功能,可是由于本身设计的问题,这些方法却遭到众多批评,而这些遭受批评的...
Calendar和Date的转化,java学习总结,java学习总结,java学习总结
主要为大家详细介绍了Java中Date和Calendar常用用法,感兴趣的小伙伴们可以参考一下
031105_【第11章:Java常用类库】_日期操作类(Date、Calendar)笔记
Calendar和Date大部分常量及方法对比,提供计算上月某一天是几号,指定的某年某月某日的时间信息。
Calendar 和 Date 类 是JAVA很重要的两个类,学好它们对于JAVA学习的道路非常重要
1.Calendar 转化 String 2.String 转化Calendar 3.Date 转化String 4.String 转化Date 5.Date 转化Calendar 6.Calendar转化Date
本压缩包详尽列举了JavaAPI当中的System、Runtime、Math、Date、Calendar类的实例,特别是日期格式与字符串格式的各种灵活转换。更多内容请参见:http://blog.csdn.net/zhongkelee
NULL 博文链接:https://ollevere.iteye.com/blog/1320854
第二十五天,对包装类及Date类和Calendar类的学习
详细地Date、String、Calendar之间的转换
Date String Calendar之间的转换
CREATE TABLE `SYS_CALENDAR_DATE` ( `CALENDAR_DATE` varchar(20) COLLATE utf8mb4_general_ci NOT NULL COMMENT '日期 yyyy-MM-dd', `CALENDAR_YEAR` int(10) NOT NULL COMMENT '年', `CALENDAR_QUARTER` int...
在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理。这里简单介绍一下Date类的使用。使用Date类的默认构造方法创建出的...