public class Test {
public void finalize(){
System.err.println("i am des");
}
public static void main(String[] args) {
Test test=new Test();
test=null;
System.gc();
}
}
這裡重寫了finalize,它會在對象在被銷燬的時候被調用。
運行結果:
i am des
Process finished with exit code 0
但是這裡需要注意的是,這僅在Hotspot JVM中有效。
查看虛擬機版本:
C:\Users\Administrator>java -version
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)
本文由ISMY博客發佈
閱讀更多 最後一個NPE 的文章