最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java中幾個Reference常見的作用詳解

 更新時間:2017年06月15日 09:58:03   作者:三斤牛肉  
這篇文章主要給大家介紹了Java中關(guān)于Reference多個作用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。

前言

Java中幾個Reference作用,也是面試的時候經(jīng)常問到的問題,以前總是記一次忘一次,現(xiàn)在有時間,索性寫個demo測試一把。下面來一起看看詳細(xì)的介紹:

具體代碼如下:

JVM 參數(shù): -Xmx10m -Xms5m -XX:+PrintGC

SoftReference的時候:


weakReference的時候:


StrongReference:

由于strong是JVM默認(rèn)的,這里就不做了,直接就是一點都不會被回收,直至OOM

PhantomReference:

虛引用并不會改變內(nèi)存回收機制,只是在回收的時候放到ReferenceQueue里通知用戶可做一些額外操作,比如打印日志等

如下代碼,本質(zhì)上byte[]還是一個強引用的。

輸出:


總結(jié)一下:

  • StrongReference:JVM默認(rèn),除非GC時已無任何對象引用,否則即便是OOM也不會回收
  • WeakReference:一旦沒有被引用,GC時就會回收
  • SoftReference:和strong一樣,除非GC時已無任何對象引用,否則....在即將OOM前才會被回收,所以SoftReference一般可以用來做緩存
  • sun.nio.ch.Util中就有private static ThreadLocal<SoftReference<SelectorWrapper>> localSelector
  • = new ThreadLocal<SoftReference<SelectorWrapper>>();
  • 用于臨時的Selector。
  • PhantomReference:通過構(gòu)造函數(shù)的ReferenceQueue作為一個通知,用來在對象被回收時做額外的操作。

好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • springboot項目事務(wù)標(biāo)簽驗證

    springboot項目事務(wù)標(biāo)簽驗證

    本文主要介紹了springboot項目事務(wù)標(biāo)簽驗證,文中通過示例代碼介紹的非常詳細(xì),詳細(xì)的介紹了不加事務(wù)標(biāo)簽和加事物標(biāo)簽的使用,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • java設(shè)計模式之單例模式解析

    java設(shè)計模式之單例模式解析

    這篇文章主要為大家詳細(xì)介紹了java設(shè)計模式之單例模式的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Go Java算法之外觀數(shù)列實現(xiàn)方法示例詳解

    Go Java算法之外觀數(shù)列實現(xiàn)方法示例詳解

    這篇文章主要為大家介紹了Go Java算法外觀數(shù)列實現(xiàn)的方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • Java如何定義Long類型

    Java如何定義Long類型

    這篇文章主要介紹了Java如何定義Long類型,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • SpringBoot+Vue添加騰訊云人臉識別的項目實踐

    SpringBoot+Vue添加騰訊云人臉識別的項目實踐

    人臉識別是一種基于人臉特征進(jìn)行身份認(rèn)證和識別的技術(shù),本文主要介紹了SpringBoot+Vue添加騰訊云人臉識別的項目實踐,具有一定的參考價值,感興趣的可以了解一下
    2023-08-08
  • Java StringTokenizer分隔符拆分字符串

    Java StringTokenizer分隔符拆分字符串

    Java中的StringTokenizer類用于將一個字符串分解成標(biāo)記,本文主要介紹了Java StringTokenizer分隔符拆分字符串,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-08-08
  • Java實戰(zhàn)之實現(xiàn)文件資料上傳并生成縮略圖

    Java實戰(zhàn)之實現(xiàn)文件資料上傳并生成縮略圖

    這篇文章主要介紹了通過Java實現(xiàn)文件資料的上傳并生成一個縮略圖,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Java有一定的幫助,感興趣的小伙伴可以了解一下
    2021-12-12
  • Java實現(xiàn)添加條碼或二維碼到Word文檔

    Java實現(xiàn)添加條碼或二維碼到Word文檔

    這篇文章主要介紹了如何在Word文檔中添加條碼、二維碼。可在文檔正文段落中添加,也可在頁眉頁腳中添加,感興趣的小伙伴快跟隨小編一起學(xué)習(xí)一下吧
    2022-05-05
  • 如何通過Java監(jiān)聽MySQL數(shù)據(jù)的變化

    如何通過Java監(jiān)聽MySQL數(shù)據(jù)的變化

    對于二次開發(fā)來說,很大一部分就找找文件和找數(shù)據(jù)庫的變化情況,下面這篇文章主要給大家介紹了關(guān)于如何通過Java監(jiān)聽MySQL數(shù)據(jù)的變化的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • Java鏈表元素查找實現(xiàn)原理實例解析

    Java鏈表元素查找實現(xiàn)原理實例解析

    這篇文章主要介紹了Java鏈表元素查找實現(xiàn)原理實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07

最新評論

六盘水市| 和平区| 桃江县| 黄大仙区| 江北区| 海宁市| 武鸣县| 河曲县| 南漳县| 昌邑市| 香港 | 洛南县| 河津市| 武威市| 梨树县| 临湘市| 金华市| 华蓥市| 石楼县| 诸城市| 察雅县| 河北省| 晋中市| 景德镇市| 大同县| 富阳市| 根河市| 嵊州市| 阜城县| 洱源县| 舟曲县| 七台河市| 武宁县| 崇义县| 马公市| 天柱县| 东明县| 雅江县| 保定市| 奉贤区| 咸丰县|