Java引用

一、引用級別

強引用(StrongReference) > 軟引用(SoftReference) > 弱引用(WeakReference) > 虛引用(PhantomReference)

二、引用區(qū)別

引用類型??????? GC掃描時 回收該對象時機 聯(lián)合引用隊列使用 備注
強引用 永遠不會回收 - 使用最普遍的引用
軟引用 內(nèi)存不足時,才回收 可以 可用來實現(xiàn)內(nèi)存敏感的高速緩存。
弱引用 不管內(nèi)存是否足夠,都會回收 可以 軟引用生命周期更短。GC線程優(yōu)先級很低,因此不一定會很快發(fā)現(xiàn)弱引用。
虛引用 在任何時候都可能回收 必須 形同虛設(shè),和沒有任何引用一樣,不會決定對象的生命周期。用來跟蹤對象被GC回收的活動。

引用引用隊列(ReferenceQueue)聯(lián)合使用,當GC準備回收該對象時;就會在回收之前,把該引用加入到與之關(guān)聯(lián)的引用隊列中。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容