clone()
protected native Object clone() throws CloneNotSupportedException;
toString()
toString()方法目的:将一个对象的引用转换为字符串形式:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
print()都以字符串形式输出,注意调用引用会自动toString():
toString()以后都是要重写的
如遍历一个链表的toString()方法:
1. 先判断是否为空
2. 引入StringBuilder,先初始化下
3. 然后在死循环中去判断是否为结束标志
4. 如果是直接return成StringBuilder.toString();否则继续遍历
注意:SUN的类的toString()方法都重写了,所以SUN类的对象.toString()都可以放心使用!
equals(Object obj)
public boolean equals(Object obj) {
return (this == obj);
}
equal()方法重写:(要彻底!因为有可能其对比的属性也是引用)
重要
finalize()
- 由GC(Garbage Collection)机制调用,不需要程序员手动调用
- 是每个对象被GC机制回收时所要执行的最终方法(一个人去世时要去做的最后一件事)
- 垃圾回收不会轻易启动(垃圾太少,时间未到,种种原因)
- System.gc(); 只会建议性启动GC机制
- 程序员可以重写此方法(比如业务日志需要记录每个对象被销毁的时间)
protected void finalize() throws Throwable { }
hashCode()
public native int hashCode();