Java入门-Object 类

Object 类是所有类的父类。

下面介绍几个 Object 类中常用的方法。

toString

toString 用于输出对象的自我描述信息。

Object 类提供的 toString 返回该对象实现类的 “类名 + @ + hashCode”。

通常需要重写该方法。

==

对于基本数据类型的变量,只要两个变量的值相等(不需要数据类型完全相同),就返回 true。

对于两个引用类型的变量,只有它们指向同一个对象时,== 判断才会返回 true。

equals

对于引用变量,只有指向同一个对象时才返回 true。

当仅需要判断值相等时,一般需要重写 equals 方法。

重写 equals 方法的示例:

1
2
3
4
5
6
7
8
9
10
11
12
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj !=null && obj.getClass() == Person.class) {
Person personObj = (Person)obj;
if (this.getIdStr().equals(personObj.getIdStr())) {
return true;
}
}
return false;
}

注意:如果equals 为 true,那么也需要重写 hashcode 方法,以保证 hashCode() 返回值相等,这是一种约定俗称的规范。即 equals 为 true 是 hashCode 相等的充分非必要条件。