java.util.Date 和 java.sql.Date兩者的使用及相互轉換

點擊超鏈接查看文章: 時間日期類詳細總結大全 ——這裏帶來更全面的時間日期類講解

java.util.Date(父類)
----java.sql.Date(子類)

1.掌握兩個構造器的使用
java.util.Date() //無參構造器
java.util.Date(long Date) //創建指定毫秒數的Date對象
java.sql.Date(long Date) //只有一個有參的構造器

2.兩個方法的使用
toString()方法 //直接返回當前時間
getTime()方法 //返回1970年至今的毫秒數//此方法跟System.currentTimeMillis()方法類似

3.java.sql.Date //專門用於數據庫的時間
java.util.Date -> java.sql.Date
java.sql.Date -> java.util.Date

package com.Lindom.時間日期;
import java.util.Date;
public class DateDemo {

    public static void main(String[] args) {

        //java.util.Date的無參構造及兩個方法的使用
        Date date = new Date();
        System.out.println("date = " + date.toString());    //Sat Jun 06 23:12:31 CST 2020
        System.out.println("date = " + date.getTime());    //1591455534797 //此方法跟System.currentTimeMillis()方法類似
        System.out.println("------------------------");

        //java.util.Date的有參構造及toString方法的使用
        Date date1 = new Date(1591455534797L);  //創建指定毫秒數的Date對象
        System.out.println("date1 = " + date1.toString());  //Sat Jun 06 22:58:54 CST 2020
        System.out.println("------------------------");

        //java.sql.Date的有參構造
        java.sql.Date date2 = new java.sql.Date(1591455534797L);
        System.out.println("date2 = " + date2);    //2020-06-06


        System.out.println("---------關於轉換問題---------------");

//        以下這個轉換方法肯定報錯:因爲java.util.Date是父類,java.sql.Date是子類,將父類直接強轉爲子類的前提是:多態
//        也就是說,父類的引用指向子類對象,這樣的情況下才可以進行強轉!
//        Date date3 = new Date();
//        java.sql.Date date4 = (java.sql.Date)date3;
//        System.out.println(date4);

        //如下就是父類引用指向子類對象的強轉例子,也是java.util.Date轉爲java.sql.Date 的一個方法
        Date date3 = new java.sql.Date(1111254125632L);
        java.util.Date date4 = (java.sql.Date)date3;
        System.out.println("date3 = " + date3);
        System.out.println("date4 = " + date4);
        System.out.println("------------------------");

        //如下方法是將不涉及多態的data5,轉爲java.sql.Date的一種的方法
        Date date5 = new Date();
        java.sql.Date date6 = new java.sql.Date(date5.getTime());
        System.out.println("date5 = " + date5);
        System.out.println("date6 = " + date6);
        System.out.println("------------------------");

        //如下方法是將不涉及多態的data7,轉爲java.util.Date的一種的方法
        java.sql.Date date7 = new java.sql.Date(1232541256321L);
        Date date8 = new Date(date7.getTime());
        System.out.println("date7 = " + date7);
        System.out.println("date8 = " + date8);
        System.out.println("------------------------");
    }
}

最終的執行結果如下:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章