2013-12-12 68 views
4

有人可以解釋我這個垃圾收集。Java垃圾收集器如何識別未引用的對象?

+1

有幾種算法available.I認爲這將幫助你.http://javarevisited.blogspot.com/2011/04/garbage-collection-in-java.html –

+0

[Java垃圾收集基礎](http:///www.oracle.com/webfolder/technetwork/tutorials/obe/java/gc01/index.html) – ChiefTwoPencils

+1

這正是那些需要保持開放性的問題之一,因爲它提出了一個關於編程的一般問題,它肯定可以幫助未來的訪問者以及新加入編程的人來學習這些東西。他不是第一個想知道這一點的人,也不會是最後一位提出這個問題的人,現在有一個提及這個問題的未來人們可以查看。我認爲通過刪除有關面試的部分,將來需要編輯這個問題。 – Armand

回答

3

簡而言之:遍歷引用圖並查看引用指向哪些節點。其他對象(未指向的那些對象)被視爲垃圾,因此它們被標記爲符合垃圾回收的條件。

+0

Thanks @ peter.petrov –

+0

是否有可能以'System.out.println()'未引用對象的哈希碼? – kiltek

+0

@kiltek好吧,如果你想打印他們的哈希碼,這意味着你想引用它們,對吧?但他們沒有被引用,所以...我沒有看到一種方法來做到這一點。我可能是錯的,但我懷疑這一點。 –