Object类:
位于java.lang.Object包下,是类层次结构的根类。是所有类的默认继承Object,省略了extends Object关键字
所有对象(包括数组)都实现了Object类的方法;
该类中主要有以下方法: toString(),getClass(),equals(),clone(),finalize(),
其中toString(),getClass(),equals是其中最重要的方法。
toString()方法:
Object 类的 toString 方法返回一个字符串,该字符串由类名(对象是该类的一个实例)、at 标记符 “@”和此对象哈希码的无符号十六进制表示组成。
该方法用得比较多,一般子类都有覆盖。
equals()方法:
Object中的equals方法是直接判断this和obj本身的值是否相等,即用来判断调用equals的对象和形参obj所引用的对象是否是同一对象,
所谓同一对象就是指内存中同一块存储单元,如果this和obj指向的hi同一块内存对象,则返回true,如果this和obj指向的不是同一块内存,则返回false。
注意:即便是内容完全相等的两块不同的内存对象,也返回false。
如果是同一块内存,则object中的equals方法返回true,如果是不同的内存,则返回false
如果希望不同内存但相同内容的两个对象equals时返回true,则我们需要重写父类的equal方法
String类已经重写了object中的equals方法(这样就是比较内容是否相等了)
Date类:
1、Date类是经常会使用到的一个用来处理日期、时间的一个类。Date类是在java.util包下的Date类。
2、Date类的构造器有:
Date():分配Date对象并初始化此对象,以表示分配它的时间(精确到毫秒)。
Date(long date):分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。
3、下面是其的几个方法:
getTime()方法来获取毫秒数,其返回值类型是long,其可以把日期对象转成毫秒值。
setTime(long time):表示的是time毫秒的时间点,其返回值类型是void,其可以把毫秒值转成具体日期。
4、当遇到日期对象与需求的日期对象不一样时,那么就可以使用SimpleDateFormat类来进行转换,SimpleDateFormat是可以根据自己需要的日期格式来转换。也就是可以对Date和String相互转换。
使用parse时要注意,被转换时间字符串格式必须和转换器声明的格式一致
DateFormat类
1、使用 DateFormat 类实际上是用它的实现类 —— SimpleDateFormat;
2、SimpleDateFormat 类的构造方法要传入参数,这个参数就是一个模式 ——
yyyy年MM月dd日 HH时mm分ss秒
yyyy-MM-dd HH:mm:ss
3、构造好对象后,使用成员方法
format( ) 【这里的参数必须是 Date date】
parse( ) 【这里的参数必须和创建对象的模式参数一样】【转换为Date格式】
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class test {
public static void main(String[] args) throws ParseException {
demo02();
}
private static void demo02() throws ParseException {
Date date = new Date();
//1、创建 DateFormat 的实现子类 SimpleDateFormat 类对象,传入指定参数 —— yyyy年MM月dd日 HH时mm分ss秒 or yyyy-MM-dd HH:mm:ss
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
// 2、使用该类对象的成员方法 sdf.format(Date date)【参数必须是 Date 类型】 → 2020年11月03日 19时59分51秒
System.out.println(sdf.format(date));
// 3、使用该类对象的成员方法 sdf.parse("2020年11月03日 19时59分51秒") → Tue Nov 03 19:59:51 CST 2020
System.out.println(sdf.parse("2020年11月03日 19时59分51秒"));
}
}