<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-31  評論-14  文章-0  trackbacks-0

     在JDK1.2以前的版本中,當一個對象不被任何變量引用,那么程序就無法再使用這個對象。也就是說,只有對象處于可觸及狀態(tài),程序才能使用它。這 就像在日常生活中,從商店購買了某樣物品后,如果有用,就一直保留它,否則就把它扔到垃圾箱,由清潔工人收走。一般說來,如果物品已經被扔到垃圾箱,想再 把它撿回來使用就不可能了。

            但有時候情況并不這么簡單,你可能會遇到類似雞肋一樣的物品,食之無味,棄之可惜。這種物品現(xiàn)在已經無用了,保留它會占空間,但是立刻扔掉它也不劃算,因 為也許將來還會派用場。對于這樣的可有可無的物品,一種折衷的處理辦法是:如果家里空間足夠,就先把它保留在家里,如果家里空間不夠,即使把家里所有的垃 圾清除,還是無法容納那些必不可少的生活用品,那么再扔掉這些可有可無的物品。從JDK1.2版本開始,把對象的引用分為四種級別,從而使程序能更加靈活的控制對象的生命周期。這四種級別由高到低依次為:強引用、軟引用、弱引用和虛引用。

     

     

    1.強引用

      本章前文介紹的引用實際上都是強引用,這是使用最普遍的引用。如果一個對象具有強引用,那就類似于必不可少的生活用品,垃圾回收器絕不會回收它。當內存空 間不足,Java虛擬機寧愿拋出OutOfMemoryError錯誤,使程序異常終止,也不會靠隨意回收具有強引用的對象來解決內存不足問題。

     

    2.軟引用(SoftReference)

     

      如果一個對象只具有軟引用,那就類似于可有可物的生活用品。如果內存空間足夠,垃圾回收器就不會回收它,如果內存空間不足了,就會回收這些對象的內存。只要垃圾回收器沒有回收它,該對象就可以被程序使用。軟引用可用來實現(xiàn)內存敏感的高速緩存。軟引用可以和一個引用隊列(ReferenceQueue)聯(lián)合使用,如果軟引用所引用的對象被垃圾回收,Java虛擬機就會把這個軟引用加入到與之關聯(lián)的引用隊列中。

     

     

    3.弱引用(WeakReference)

      如果一個對象只具有弱引用,那就類似于可有可物的生活用品。弱引用與軟引用的區(qū)別在于:只具有弱引用的對象擁有更短暫的生命周期。在垃圾回收器線程掃描它 所管轄的內存區(qū)域的過程中,一旦發(fā)現(xiàn)了只具有弱引用的對象,不管當前內存空間足夠與否,都會回收它的內存。不過,由于垃圾回收器是一個優(yōu)先級很低的線程, 因此不一定會很快發(fā)現(xiàn)那些只具有弱引用的對象。 弱引用可以和一個引用隊列(ReferenceQueue)聯(lián)合使用,如果弱引用所引用的對象被垃圾回收,Java虛擬機就會把這個弱引用加入到與之關聯(lián)的引用隊列中。

     

     

    4.虛引用(PhantomReference)

      "虛引用"顧名思義,就是形同虛設,與其他幾種引用都不同,虛引用并不會決定對象的生命周期。如果一個對象僅持有虛引用,那么它就和沒有任何引用一樣,在任何時候都可能被垃圾回收。虛引用主要用來跟蹤對象被垃圾回收的活動。虛引用與軟引用和弱引用的一個區(qū)別在于:虛引用必須和引用隊列(ReferenceQueue)聯(lián)合使用。當垃 圾回收器準備回收一個對象時,如果發(fā)現(xiàn)它還有虛引用,就會在回收對象的內存之前,把這個虛引用加入到與之關聯(lián)的引用隊列中。程序可以通過判斷引用隊列中是 否已經加入了虛引用,來了解被引用的對象是否將要被垃圾回收。

    posted on 2012-07-12 22:28 zhanghu198901 閱讀(815) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網站導航:
     
    主站蜘蛛池模板: 视频一区二区三区免费观看| 亚洲视频一区调教| 鲁大师在线影院免费观看| 最近2019免费中文字幕视频三| 亚洲毛片在线免费观看| 久久丫精品国产亚洲av不卡| 无码人妻一区二区三区免费看| 国产亚洲综合成人91精品| 免费国产污网站在线观看| 亚洲伊人久久精品影院| 亚洲中文字幕一二三四区苍井空| 四虎成人精品国产永久免费无码 | 亚洲av无码一区二区三区观看| 99久久免费精品高清特色大片| 亚洲视频在线播放| 免费精品国产日韩热久久| 亚洲中文字幕久久精品无码A| 精品免费久久久久久成人影院| 亚洲av无一区二区三区| yy6080久久亚洲精品| 中文在线观看免费网站| 内射干少妇亚洲69XXX| 中文字幕无码免费久久99| 亚洲中文久久精品无码ww16| 99久久免费国产精精品| 国产精品酒店视频免费看| 美美女高清毛片视频黄的一免费| 久久影视国产亚洲| 99热免费在线观看| 最新亚洲精品国偷自产在线| 91人人区免费区人人| 亚洲天然素人无码专区| 亚洲麻豆精品国偷自产在线91| 亚洲人成图片网站| 一本色道久久88综合亚洲精品高清| 三上悠亚在线观看免费| 亚洲制服丝袜中文字幕| 亚洲精品乱码久久久久久蜜桃| 中文字幕天天躁日日躁狠狠躁免费| 亚洲H在线播放在线观看H| 最新国产AV无码专区亚洲|