Date day = new Date();
Date day1 = new Date(1623980304753L);//Date(long num)
/**
* 两个包中有同名类,只能导入一个,另一个使用时要补全类的绝对路径
*/
java.sql.Date day2 = new java.sql.Date(1623980304753L);
java.util.Date day3 = new java.sql.Date(1623980304753L);//向上转型
/**
* 2.java.sql.Date和java.util.Date联系和区别
*
* 联系:java.sql.Date extends java.util.Date
* 两者都有构造方法Date(long ms)
*
* 区别:1.util 年月日时分秒 sql 年月日
*
* 2.sql.Date没有无参数构造方法,但是静态方法java.sql.Date.valueOf("2021-06-01")将字符串转换成日期
*
* util.Date有无参数构造方法,但是没有静态方法java.sql.Date.valueOf("2021-06-01")将字符串转换成日期
*
*/
System.out.println(day.getTime());// 得到当前时间距离1970-01-01 00:00:00(计算机元年)的毫秒数
System.out.println(day.after(day1));// day是否在day1之后
System.out.println(day.before(day1));// day是否在day1之前
System.out.println(day.compareTo(day1));// day与day1的大小关系
System.out.println(day.equals(day1));// day与day1是否相等
/**
* 设置日期格式
* DateFormat 抽象类不能实例化,SimpleDateFormat是直接子类
*/
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String strNow = df.format(day);// 按格式将日期转换成字符串
System.out.println(strNow);
String str = "2016-09-12 00:00:00";// 字符串格式要符合DateFormat
Date strTime = df.parse(str);// 将字符串按照格式转成日期,需要抛异常处理
System.out.println(strTime.getTime());