Java的引用隊(duì)列和虛引用實(shí)例分析-創(chuàng)新互聯(lián)

這篇文章主要講解了“Java的引用隊(duì)列和虛引用實(shí)例分析”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Java的引用隊(duì)列和虛引用實(shí)例分析”吧!

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),靈壽企業(yè)網(wǎng)站建設(shè),靈壽品牌網(wǎng)站建設(shè),網(wǎng)站定制,靈壽網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,靈壽網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

一 點(diǎn)睛

引用隊(duì)列由ReferenceQueue類表示,它用于保存被回收后對(duì)象的引用。當(dāng)聯(lián)合使用軟引用、弱引用和引用隊(duì)列時(shí),系統(tǒng)在回收被引用的對(duì)象之后,將把它所回收對(duì)象對(duì)應(yīng)的引用添加到關(guān)聯(lián)的引用隊(duì)列中。而虛引用在對(duì)象被釋放之前,將把它對(duì)應(yīng)的虛引用添加到它關(guān)聯(lián)的引用隊(duì)列中,這使得可以在對(duì)象被回收之前采取行動(dòng)。

虛引用無(wú)法獲取它所對(duì)應(yīng)的對(duì)象。

二 實(shí)戰(zhàn)

1 代碼

import java.lang.ref.*;public class PhantomReferenceTest{  public static void main(String[] args)   throws Exception  {   // 創(chuàng)建一個(gè)字符串對(duì)象   String str = new String("瘋狂Java講義");   // 創(chuàng)建一個(gè)引用隊(duì)列   ReferenceQueue rq = new ReferenceQueue();   // 創(chuàng)建一個(gè)虛引用,讓此虛引用引用到"瘋狂Java講義"字符串   PhantomReference pr = new PhantomReference (str , rq);   // 切斷str引用和"瘋狂Java講義"字符串之間的引用   str = null;   // 取出虛引用所引用的對(duì)象,并不能通過(guò)虛引用獲取被引用的對(duì)象,所以此處輸出null   System.out.println(pr.get()); //①   // 強(qiáng)制垃圾回收   System.gc();   System.runFinalization();   // 垃圾回收之后,虛引用將被放入引用隊(duì)列中   // 取出引用隊(duì)列中先進(jìn)入隊(duì)列中的引用與pr進(jìn)行比較   System.out.println(rq.poll() == pr);  //②  }}

2 運(yùn)行

nulltrue

3 說(shuō)明

使用引用類可以避免在程序執(zhí)行期間將對(duì)象留在內(nèi)存中。如果以軟引用、弱引用或虛引用的方法引用對(duì)象,垃圾回收器就能夠隨意釋放對(duì)象。如果希望盡可能減小程序在其生命周期中所占用的內(nèi)存大小,這些引用類很有好處。

感謝各位的閱讀,以上就是“Java的引用隊(duì)列和虛引用實(shí)例分析”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì)Java的引用隊(duì)列和虛引用實(shí)例分析這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

本文題目:Java的引用隊(duì)列和虛引用實(shí)例分析-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://muchs.cn/article30/dcppso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站建設(shè)服務(wù)器托管、全網(wǎng)營(yíng)銷推廣、虛擬主機(jī)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司