Java Object类(三十三)
Object 是 Java 类库中的一个特殊类,也是所有类的父类。也就是说,Java 允许把任何类型的对象赋给 Object 类型的变量。
当一个类被定义后,如果没有使用 extends 关键字明确标识继承另外一个类,那么默认父类就是 Object 类。
public class MyClass {…} 等价于 public class MyClass extends Object {…}
Object类的常用方法
1.toString() 方法
toString() 方法返回该对象的字符串,当程序输出一个对象或者把某个对象和字符串进行连接运算时,系统会自动调用该对象的 toString() 方法返回该对象的字符串表示。
Object 类的 toString() 方法返回“运行时类名@十六进制哈希码”格式的字符串,可以通过重写 Object 类的 toString() 方法,返回可以表述该对象信息的字符串。
哈希码(hashCode),每个 Java 对象都有哈希码属性,哈希码可以用来标识对象,提高对象在集合操作中的执行效率。
例如:
运行结果:
重写 Object 类的 toString() 方法,返回可以表述 Dog 类属性的字符串:
运行TestAnimals,结果为:
2.equals() 方法
equals() 方法(等价于 == )比较的是对象的引用是否指向同一块内存地址。
一般情况下需要比较两个对象的值是否一致,所以要进行重写。
boolean result = obj.equals(Object o);
其中,obj 表示要进行比较的一个对象,o 表示另一个对象。
运行结果:
判断两个数据的值是否相同,需要重写equals方法:
运行TestAnimals,结果为: