java 的Object 类是多么重要,应该不用多说 所有类都继承于该类。
其中的方法也都是精华中的精华,一共也就10个左右的方法。对于所有的方法的理解也是
java程序员的最基础:
下面介绍一下 finalize方法:
记得在之前面试中有被问到过Object中的所有对象,对于其他的还能说明作用,对finalize则是完全不会。
其实这个方法作用很简单,就是在对象被jvm回收时执行,所有如果某个对象需要在被回收时做点事情,就可以重写该方法了。
用法举例说明:
public class Test {
public static void main(String[] args) {
FinalizeTest t = new FinalizeTest();
t = null; // 创建一个对象后要把这个对象引用置为null,这样才能被jvm回收 如果注释这句话,jvm不会回收t指向的对象,也就不会执行该对象的finalize方法
System.gc(); // 告诉jvm去回收对象,至于jvm何时回收看jvm心情
}
}
class FinalizeTest{
/**
* 重写finalize方法
*/
@Override
protected void finalize() throws Throwable {
System.out.println("我被回收了!");
}
}
执行结果:
打印:我被回收了!