Object概述
Object类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。在对象实例化的时候,最终找的父类就是Object。
Object类中描述所有对象共有的方法:
部分代码示例
//相当于获取对象最本质的数据类型
public final native Class<?> getClass();
//返回对象的哈希码的值,如果该类没有重写hashCode的方法,hashCode默认值就是对象在堆内存中的真实物理地址
public native int hashCode();
//Object本身equals比的是自身对象this和传入对象obj的地址值。如需重新定义等于,则子类重写,按需比较即可
public boolean equals(Object obj) {
return (this == obj);
}
//Object本身的toString返回的是对象最本质的数据类型的名称+"@"+哈希值的十六进制形式。如需重新定义对象的字符串形式,则子类重写,按需拼接数据即可
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
//对象的拷贝
protected native Object clone()
/*
对于任何对象x:
【保证肯定有新对象创建】表达式: x.clone() != x 为true
【保证对象和副本之间的数据类型是一致的】表达式: x.clone().getClass() == x.getClass()为true,但这些并非必须要满足的要求。
【保证对象和副本之间的数据内容是一致的】一般情况下: x.clone().equals(x)为true,但这并非必须要满足的要求。
*/