编写一个具有finalize()方法的类,并在方法中打印出一个消息。在main()中为这个类创建一个对象,且让finalize()方法总能够被调用。
我是这样写的:
public class TestFinalize {
public void finalize(){
System.out.println("call finalize");
}
public static void main(String[] args) {
TestFinalize tf = new Testfinalize();
System.gc();
}
}
这样为什么finalize()不会被调用阿?
请多多指教
我是这样写的:
public class TestFinalize {
public void finalize(){
System.out.println("call finalize");
}
public static void main(String[] args) {
TestFinalize tf = new Testfinalize();
System.gc();
}
}
这样为什么finalize()不会被调用阿?
请多多指教
public void finalize(){
System.out.println("call finalize");
}
public static void main(String[] args) {
new Testfinalize();
System.gc();
}
}
只有没用任何引用时,才由可能调用。修改如下,可达成你的要求public class Finalize {
public void finalize(){
System.out.println("call finalize");
}
public static void main(String[] args) {
Finalize f = new Finalize();
f = new Finalize();
System.gc();
}
}