Runtime类的gc不是立刻运行垃圾回收机制吗,运行垃圾回收不就是运行finalize 方法吗,
怎么runtime类里面还有一个runFinalization方法,我看注释写得是运行finalize方法,
我想问一下,gc和runFinalization这两个方法有什么区别,高手帮忙解释一下,在此先谢过了!
怎么runtime类里面还有一个runFinalization方法,我看注释写得是运行finalize方法,
我想问一下,gc和runFinalization这两个方法有什么区别,高手帮忙解释一下,在此先谢过了!
这只是第一步,接下来就要释放对象的内存了。
而runFinalization方法,按你说的只是运行finalize方法,当然不同了
那是我理解错了,我以前一直以为垃圾回收就是调用一下finalize方法,别的就什么也不做了。楼上的能说得更明白一些吗,比如finalize方法里面是怎么写的,还有垃圾回收的时候除了finalize 方法之外还会做别的什么操作。 谢谢了!
垃圾回收只与内存有关。runFinalization这倒有一个讨论的http://book.77169.org/3930/3930352.htm
这个帖子不错!“gc在大部分状况下会将没有任何指向的引用的内存释放掉,除非在特殊情况下,最好不要干涉gc!
runFinalization()方法在调用时它会尽量去调用这个对象的finalize方法!
都是强制gc去回收内存,其它大部分相似!”
http://blog.tom.com/moonhippo/article/1642.html