java的引用類型的詳細(xì)介紹
•強引用(FinalReference),在java中,有點像C++的指針,通過引用,可以對堆中的對象進行操作。強引用具備以下特點:
1.強引用可以直接訪問目標(biāo)對象;
2.強引用所指向的對象在任務(wù)時候都不會被系統(tǒng)回收;
3.強引用可能導(dǎo)致內(nèi)存泄露。
•軟引用(SoftReference),軟引用對象,在響應(yīng)內(nèi)存需要時,由垃圾回收器決定是否清除此對象。一個持有軟件引用的對象,不會被JVM很快回收,只要有足夠的內(nèi)存,軟件引用便可能在內(nèi)存中存活相當(dāng)長的時間,軟引用對象最常用于實現(xiàn)內(nèi)存敏感的緩存;
•弱引用(WeakReference),弱引用是一種比較弱的引用類型,在系統(tǒng)GC時,只要發(fā)現(xiàn)弱引用,不管系統(tǒng)堆內(nèi)存是否足夠,都會將對象回收;
•虛引用(PhantomReference),虛引用是所有引用最弱的一個,一個持有虛引用的對象,和沒有引用幾乎是一樣的,隨時都可能被垃圾回收器回收。
相關(guān)文章
Java中的ThreadLocal與ThreadLocalMap詳解
這篇文章主要介紹了Java中的ThreadLocal與ThreadLocalMap詳解,ThreadLocal 是一個線程局部變量,其實的功用非常簡單,就是為每一個使用該變量的線程都提供一個變量值的副本,是Java中一種較為特殊的線程綁定機制,需要的朋友可以參考下2023-09-09淺析Java8新特性Lambda表達式和函數(shù)式接口
Lambda表達式理解為是 一段可以傳遞的代碼。最直觀的是使用Lambda表達式之后不用再寫大量的匿名內(nèi)部類,簡化代碼,提高了代碼的可讀性2017-08-08基于Ok+Rxjava+retrofit實現(xiàn)斷點續(xù)傳下載
這篇文章主要為大家詳細(xì)介紹了基于Ok+Rxjava+retrofit實現(xiàn)斷點續(xù)傳下載,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-06-06