选用教材:《Java核心技术卷一》
第四章 对象与类
4.2 Date类和对象的初体验
一、几个容易产生歧义的地方
1、“构造器的名字应该与类名相同”
前几章中有提到:在创建类的时候,一定要与文件名保持一致。所以到了这一章,乍看这句话,我心里的逻辑是:类名=文件名,所以文件名和类名都应该叫Date。其实只需要构造器和类的名字是Date就可以了,文件名最好不要和构造器名一致。因为有的编译器没有自动添加包的功能,所以它识别不到我们在编程过程中引用了Date类,也就不会提示你加一个Date包进去。最后得到的结果也一定是错误的,通常它的错误提示是:Cannot format given Object as a Date. 对于这个问题,只需导入Date包即可运行程序。(import java.util.Date)。
2、对象变量与常规变量
学过了整型变量,如int n;浮点型变量,如float k;对象变量和这些变量的区别仅是:它们是用对象来定义/声明的。如Date类的对象变量为:Date deadline。
3、对象变量并未包含一个对象
这点倒是很好理解,没有人会觉得上面的例子中n是真正地包含了一个正整数。所有的对象变量都是在引用存储在一个地方的对象而已。
4、被设置成null的对象变量
null和变量为空是有区别的,像之前学习的字符串,空串是长度为0的串,null串则表明这个字符串不与任何对象相关联。
二、用Date类来获取当前时间的方法:
1、简单构造器法:
String s=new Date().toString(); System.out.println(s);
或者:
System.out.println(new Date());
2、引用DateFormat和SimpleDateFormat:
Date birthday=new Date(); DateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); System.out.println(df.format(birthday));