各位高手,我现在在在Java编程思想,对里面讲的垃圾回收机制看得不是太懂,我想问一下,有哪位高手可以详细的解释一下垃圾回收机制具体[怎么工作的,尤其是finalized函数怎么用的,谢谢!!![/size][/size]

解决方案 »

  1.   

    就是说垃圾回收不一定会执行,只有执行了垃圾回收才能执行finalized
      

  2.   

    任何时候都不要依赖于finalized函数来控制你的程序逻辑,因为你并不知道这个函数什么时候执行,或者是否执行。垃圾回收机制的工作原理,一般都是采用引用计数的方式了,不同的虚拟机可能采用的方式不一定一样。这个只需要了解就可以了,我觉得不需要太过深的研究。
      

  3.   

    垃圾回收的机制是一种被动机制,垃圾回收是由虚拟机来执行的,在这个过程中会调用被回收对象的 finalize 方法。
      

  4.   

    垃圾回收器,就是后台监视对象进行内存优化的一种机制。
    当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用finalize方法对对象进行清理,但何时调用finalize由系统决定,即使调用System.gc()方法也不会令垃圾回收器立即执行。因此finalize的执行具有不确定性个人理解,期待高手