java gc是什麼
gc是指垃圾回收機制,當物件無法再被後續程式所引用到時,這個物件所佔用的記憶體空間就沒有存在的意義了,java虛擬機會不定時的去檢測記憶體中這樣的對象,然後回收這塊記憶體空間。
gc是Java與C /C的主要區別之一,在使用JAVA的時候,一般不需要專門編寫記憶體回收和垃圾清理代 碼。這是因為在Java虛擬機器中,有自動記憶體管理和垃圾清除機制。
GC的基本原理:
1. 對於程式設計師來說,用new關鍵字即在堆中分配了內存,我們稱之為「可達」。對於GC來說,只要所有被引用的物件為null時,我們稱之為“不可達”,就將進行記憶體的回收。
2. 當一個物件被建立時,GC開始監控這個物件的大小、記憶體位址及使用情況。 GC採用有向圖的方式記錄和管理堆(heap)中的所有對象,透過這種方式可以明確哪些對像是可達的,哪些不是。當確定為不可達時,則對其進行回收。
3. 保證GC在不同平台的實作問題,java規範對其許多行為沒有進行嚴格的規定。對於採用什麼演算法,什麼時候進行回收等。
php中文網,大量的免費Java入門教學,歡迎線上學習!
以上是java gc是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!