劇多
首頁
資訊
體育
娛樂
汽車
投資
財經
軍事
科技
數碼
科學
遊戲
歷史
健康
政治
影視
旅遊
育兒
美食
時尚
房產
農業
社會
文化
教育
技術
美文
情感
故事
家居
職場
自然
闢謠
心理
攝影
漫畫
生活
其它
Club
Tips
熱門話題
搜尋
註冊
登入
首頁
>
Club
>
2021-04-23 00:04
10 java中物件和引用的關係?
9
回覆列表
1 # 使用者8244436476335
1.概念解釋
強引用
是使用最普遍的引用:Object o=new Object(); 特點:不會被GC將物件的引用顯示地置為null:o=null; // 幫助垃圾收集器回收此物件舉例ArrayList的實現原始碼:
軟引用
用來描述一些還有用但是並非必須的物件,在Java中用java.lang.ref.SoftReference類來表示。對於軟引用關聯著的物件,只有在記憶體不足的時候JVM才會回收該物件。因此,這一點可以很好地用來解決OOM的問題,並且這個特性很適合用來實現快取:比如網頁快取、圖片快取等。瀏覽器網頁快取例項:軟引用可以和一個引用佇列(ReferenceQueue)聯合使用,如果軟引用所引用的物件被垃圾回收器回收,Java虛擬機器就會把這個軟引用加入到與之關聯的引用佇列中。
弱引用
與軟引用的區別在於:只具有弱引用的物件擁有更短暫的生命週期。在垃圾回收器執行緒掃描它所管轄的記憶體區域的過程中,一旦發現了只具有弱引用的物件,不管當前記憶體空間足夠與否,都會回收它的記憶體。不過,由於垃圾回收器是一個優先順序很低的執行緒,因此不一定會很快發現那些只具有弱引用的物件。 如果這個物件是偶爾的使用,並且希望在使用時隨時就能獲取到,但又不想影響此物件的垃圾收集,那麼你應該用 Weak Reference 來記住此物件。 例項:
虛引用
也稱為Phantom引用:一個物件是都有虛引用的存在都不會對生存時間都構成影響,也無法透過虛引用來獲取對一個物件的真實引用。唯一的用處:能在物件被GC時收到系統通知,JAVA中用PhantomReference來實現虛引用。2.對比不同:
發表回復
相關內容
你介意自己的物件有關係特別好的異性朋友嗎?
和物件冷戰了怎麼恢復關係?
∧
中秋節和大豐收的關聯?
∨
《三體》程心犯了兩個嚴重錯誤,導致地球的毀滅,為什麼結局還這麼好?
熱門排行
蝦膏弄到白色衣服上怎麼洗掉?
劃撥自建房可以買賣嗎?
繁華落盡歸於平靜的文案?
雲上大陸11階裝備條件?
一輪甲子是多少年?
蛋仔派對如何讓熊貓變大?
變形金剛霸天虎為什麼叛變?
高跟鞋穿了一天脫下來臭不臭?
反衝的定義?
比亞迪e 2為什麼這麼貴?
1.概念解釋
強引用是使用最普遍的引用:Object o=new Object(); 特點:不會被GC將物件的引用顯示地置為null:o=null; // 幫助垃圾收集器回收此物件舉例ArrayList的實現原始碼:軟引用用來描述一些還有用但是並非必須的物件,在Java中用java.lang.ref.SoftReference類來表示。對於軟引用關聯著的物件,只有在記憶體不足的時候JVM才會回收該物件。因此,這一點可以很好地用來解決OOM的問題,並且這個特性很適合用來實現快取:比如網頁快取、圖片快取等。瀏覽器網頁快取例項:軟引用可以和一個引用佇列(ReferenceQueue)聯合使用,如果軟引用所引用的物件被垃圾回收器回收,Java虛擬機器就會把這個軟引用加入到與之關聯的引用佇列中。弱引用與軟引用的區別在於:只具有弱引用的物件擁有更短暫的生命週期。在垃圾回收器執行緒掃描它所管轄的記憶體區域的過程中,一旦發現了只具有弱引用的物件,不管當前記憶體空間足夠與否,都會回收它的記憶體。不過,由於垃圾回收器是一個優先順序很低的執行緒,因此不一定會很快發現那些只具有弱引用的物件。 如果這個物件是偶爾的使用,並且希望在使用時隨時就能獲取到,但又不想影響此物件的垃圾收集,那麼你應該用 Weak Reference 來記住此物件。 例項:虛引用也稱為Phantom引用:一個物件是都有虛引用的存在都不會對生存時間都構成影響,也無法透過虛引用來獲取對一個物件的真實引用。唯一的用處:能在物件被GC時收到系統通知,JAVA中用PhantomReference來實現虛引用。2.對比不同: