java.util.Date 与 java.sql.Date 相关知识点解析

问:java.sql.Date 和 java.util.Date 有什么区别?

 

答:这两个类的区别是 java.sql.Date是针对 SQL 语句使用的,它只包含日期而没有时间部分,一般在读写数据库时用。java.util.Date 是在除了 SQL 语句外的所有情况下使用的,一般是日常日期字段。java.util.Date 是 java.sql.Date 的父类。唯一的相同点就是都有 getTime 方法返回毫秒数(因为继承了util下的getTime 方法)。代码解释所示:

 

public class DateShow {
    public static void main(String[] args) {
        java.util.Date nowUtil = new java.util.Date();
        java.sql.Date nowSql = new java.sql.Date(System.currentTimeMillis());//需要传参

        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        System.out.println(format.format(nowUtil));
        System.out.println(format.format(nowSql));
        System.out.println(nowUtil);
        System.out.println(nowSql);
    }
}

 

 
/**
 运行结果如下:
 2018-06-08 17:33:06
 2018-06-08 17:33:06
 Fri Jun 08 17:33:06 CST 2018
 2018-06-08
 */
 
 

之所以直接打印 Date 对象表现的值不一样就是上面解释的部分,是指是调用了各自 Date 的 toString() 方法,两个 Date 对象分别有自己的 toString() 重写实现,感兴趣的可以打开源码对比一下就明白了。

转载于:https://www.cnblogs.com/eryun/p/9993336.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值