的最终化()方法是一个预先定义的方法中的对象 类,它是受保护的。可以覆盖finalize()方法的目的,以使对象包括 清除代码 或处置可以在对象被垃圾回收之前完成的系统资源。如果我们要覆盖 finalize() 方法,那么我们有责任明确地调用finalize()方法。的最终化()方法可仅一次调用 由JVM或任何给定对象。
protected void finalize() throws Throwable
public class FinalizeMethodTest {
protected void finalize() throws Throwable {
try {
System.out.println("Calling finalize() method of FinalizeMethodTest class");
} catch(Throwable th) {
throw th;
} finally {
System.out.println("Calling finalize() method of Object class");
super.finalize(); }
}
public static void main(String[] args) throws Throwable {
FinalizeMethodTest test = new FinalizeMethodTest();
String str = "finalize() method in Java";
str = null;
System.out.println(str);
test.finalize();
}
}输出结果
null Calling finalize() method of FinalizeMethodTest class Calling finalize() method of Object class