每一个类都有继承类,如果不写extends关键字,默认继承Object类,如果写了extends则继承后面那个父类,Object类是任何一个引用类型的父类(直接或间接地继承Object类)。
hashCode(); 经常被用于重写
public native int hashCode();
将对象在内存中的地址经过计算得到一个int整数。
equals(); 经常被用于重写
用来比较两个对象的内容 Object默认效果是==
==可以比较基本类型(比较值)可以比较引用类型(比较地址)
equals方法时Object类中继承过来的方法,默认效果比较地址。如果想要改变其规则,可以进行方法重写。
public boolean equals(Object obj){
return (this == obj);
}
toString(); 经常被用于重写
结果:对象的类全名@对象的hashcode值
打印输出时将对象变成String字符串。
public String toString(){
return this.getClass().getName()+"@"+Integer.toHexString(this.hashCode());
}
getClass(); 获得当前对象的运行时域类的
获取对象对应类的类映射(反射)。
wait(); 线程等待
线程进入挂起等待状态 存在方法重载。
notify(); 线程唤醒
线程唤醒。
notifyAll(); 线程唤醒
唤醒所有。
finalize(); 垃圾回收时,被调用的
权限修饰符是protected,在对象被GC回收的时候,默认调用执行的方法。
final是特征修饰符,finally是try catch执行代码块的最后代码块,finalize是一个方法名。
clone(); 将一个对象卡贝一份
权限修饰符是protected 为了克隆对象。