Object类中有哪些方法?
registerNatives方法
private static native void registerNatives();
/**
* 对象初始化时自动调用此方法
*/
static {
registerNatives();
}
作用:类被加载时注册该类所包含的除了registerNatives()方法以外的所有本地方法,例如getClass()、hashCode()、clone()等
getClass方法
/**
* 返回此Object的运行时类型
*/
public final native Class<?> getClass();
hashCode方法
public native int hashCode();
作用:返回对象的内存地址,这个方法在一些具有哈希功能的Collection中用到。
equals方法
public boolean equals(Object obj) {
return (this == obj);
}
作用:比较的是对象的内存地址。子类一般都要重写这个方法,改为比较对象值是否相等(StringBuffer就没重写)
注意:用equals方法判断之前会调用hashcode方法判断对象地址是否相等,地址相等再用equals