finalize由java虚拟机在回收对象之前调用

解决方案 »

  1.   

    我想问的是在有继承结构的程序中,finalize的调用顺序是如何的,这个和c++中的析构函数好像不同
      

  2.   

    finalize是没有一定的顺序的。因为不知道gc会在何时进行垃圾处理。
      

  3.   

    在gc清除对象之前,会调用对象的finalize方法。你不知道什么时候,以什么样的顺序来清除对象,所以调用finalize方法也是无法确定。这里一定要区分cpp中析构方法,不是一回事。