Java垃圾回收器如何识别无引用对象?

4

有人能解释一下这个垃圾回收是什么吗?


1
有几种可用的算法。我认为这会对你有所帮助。http://javarevisited.blogspot.com/2011/04/garbage-collection-in-java.html - Java_Alert
Java垃圾回收基础知识 - ChiefTwoPencils
1
这正是那些需要保持开放的问题之一,因为它提出了关于编程的普遍问题,可以帮助未来的访问者和新手学习这些东西。他不是第一个想知道这个问题的人,也不会是最后一个提出这个问题的人,现在有一个关于这个问题的参考供未来的人查看。我认为需要对问题进行编辑,将面试部分删除,以供未来参考。 - Armand
1个回答

3
简单来说,通过遍历引用图并查看哪些节点被引用指向。其他对象(那些没有被引用的对象)被视为垃圾,因此它们标记为可回收的垃圾并进行垃圾回收处理。

有没有办法在Java中使用System.out.println()打印未被引用对象的哈希码? - kiltek
@kiltek 嗯,如果你想打印它们的哈希码,那么意味着你想引用它们,对吧?但是它们没有被引用,所以我不认为有办法做到这一点。我可能错了,但我怀疑这一点。 - peter.petrov
但是如果垃圾回收器知道如何找到所有引用的对象,它仍然必须有关于未引用对象的信息,因为它需要区分它们? - kiltek

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接