JVM面試_9

Object中的finalize()方法的作用是否與C++的析構函數作用相同 它與C++的析構函數不同,析構函數調用時機是確定的,即對象離開作用域後就會被delete掉,而finalize()方法調用時機是不確定的. 當垃圾回收器要宣告一個對象死亡時,要經過至少兩次標記過程,如果對象在經過可達性算法分析後發現其沒有與GC Roots相連的引用鏈,它就會第一次被標記,並且判斷是否執行finalize
相關文章
相關標籤/搜索