深入java虚拟机第9章, 垃圾收集(4)

深入java虚拟机第9章, 垃圾收集(4)

finalize方法

终结方法是垃圾收集器在释放对象前必须运行。垃圾收集器必须检查它所发现的不再被引用的对象是否存在finalize方法。

对象可触及性的生命周期

在垃圾收集器看来,堆中的每一个对象都有三个状态之一:可触及的,可复活的,以及不可触及的。

如果垃圾收集器从根节点可以追踪到这个对象,这个对象就是可触及的。

每一个对象都是从可触及状态开始生命周期的,只要程序还保留至少一个可以触及的引用到该对象,它就一直保持可触及状态。一旦程序释放了所有到该对象的引用,然后这个对象就变成可复活状态。

你可能感兴趣的:(java,虚拟机,算法,面试,招聘)