黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 學(xué)習(xí)攻略 Java培訓(xùn) Java培訓(xùn)教程:Java的引用類型

Java培訓(xùn)教程:Java的引用類型

更新時(shí)間:2019-12-18 16:30:09 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2523次

 

Java培訓(xùn)教程:Java的引用類型

 

1.java的引用類型分為強(qiáng)引用,軟引用,和弱引用以及虛引用.

  創(chuàng)建強(qiáng)引用

String text=new String("123");

  利用=號(hào)來(lái)創(chuàng)建強(qiáng)引用

  創(chuàng)建軟引用

SoftReferencesfr=new SoftReference(text);

  針對(duì)上面的對(duì)象創(chuàng)建了一個(gè)軟引用,相當(dāng)于對(duì)于同一個(gè)對(duì)象123,創(chuàng)建了兩個(gè)引用,分別是強(qiáng)引用和軟引用

  創(chuàng)建弱引用

WeakReferencewrf=new WeakReference(text);

  同理,針對(duì)同一個(gè)變量創(chuàng)建三個(gè)引用,分別是強(qiáng)引用,軟引用和弱引用

  另外還有最后一個(gè)虛引用,這里省略

2.關(guān)于四種引用,不同情況還有一種特性叫作及物性

  例如,不管對(duì)于一個(gè)變量,創(chuàng)建了多少種引用,只要存在強(qiáng)引用,那么這個(gè)變量就叫做強(qiáng)及物性,針對(duì)這種情況,垃圾回收器,也就是gc,是永遠(yuǎn)不會(huì)回

收這種變量的.

  假如,驅(qū)除了強(qiáng)引用,只剩下了軟引用和弱引用,那么這時(shí)候這個(gè)變量就叫做軟及物,針對(duì)這種情況,gc只有在內(nèi)存不夠的情況下,才會(huì)回收變量

  最后,驅(qū)除了強(qiáng)引用和軟引用,只剩下弱引用的時(shí)候,gc只要發(fā)現(xiàn)了這個(gè)變量,就會(huì)馬上回收內(nèi)存.

3.案例演示

①案例一:

//在堆里面創(chuàng)建一個(gè)對(duì)象,即是 new String(),同時(shí)也會(huì)在常量池里面創(chuàng)建一個(gè)常量,即是123; 并且String text指向的是堆里面的對(duì)象

String text=new String("123");

//創(chuàng)建軟引用

SoftReferencesfr=new SoftReference(text);

//創(chuàng)建弱引用

WeakReferencewrf=new WeakReference(text);

//這時(shí)候,變量是屬于強(qiáng)引用.

System.out.println(text);

②案例二:

//在堆里面創(chuàng)建一個(gè)對(duì)象,即是 new String(),同時(shí)也會(huì)在常量池里面創(chuàng)建一個(gè)常量,即是123; 并且String text指向的是堆里面的對(duì)象

String text=new String("123");

//創(chuàng)建軟引用

SoftReferencesfr=new SoftReference(text);

//創(chuàng)建弱引用

WeakReferencewrf=new WeakReference(text);

//這時(shí)候,變量是屬于強(qiáng)引用.

System.out.println(text);

//這時(shí)候驅(qū)除了強(qiáng)引用,也就是變量屬于軟引用,當(dāng)內(nèi)存不夠的時(shí)候,gc才會(huì)回收

text=null;

//打印輸出變量的取值

System.out.println(sfr.get());

System.out.println(wrf.get());

//這時(shí)候是可以輸出123的效果的.

③案例三:

//在堆里面創(chuàng)建一個(gè)對(duì)象,即是 new String(),同時(shí)也會(huì)在常量池里面創(chuàng)建一個(gè)常量,即是123; 并且String text指向的是堆里面的對(duì)象

String text=new String("123");

//創(chuàng)建軟引用

SoftReferencesfr=new SoftReference(text);

//創(chuàng)建弱引用

WeakReferencewrf=new WeakReference(text);

//這時(shí)候,變量是屬于強(qiáng)引用.

System.out.println(text);

//這時(shí)候驅(qū)除了強(qiáng)引用,也就是變量屬于軟引用,當(dāng)內(nèi)存不夠的時(shí)候,gc才會(huì)回收

text=null;

//這時(shí)候去除了軟引用,也就是說(shuō)變量是屬于弱引用,只要gc發(fā)現(xiàn)了該變量,就會(huì)回收該內(nèi)存

sfr.clear();

//調(diào)用gc來(lái)回收變量,理論上,雖然即是調(diào)用了gc,但是gc也不是馬上會(huì)運(yùn)行的,她自己會(huì)負(fù)責(zé)垃圾的回收.但是其實(shí),一般來(lái)說(shuō),只要調(diào)用了gc,一般

來(lái)說(shuō),gc是會(huì)馬上運(yùn)行的

System.gc();

//這時(shí)候,弱引用是拿不到值的,因?yàn)?前面調(diào)用了gc,而gc發(fā)現(xiàn)了變量,就會(huì)馬上回收內(nèi)存,所以說(shuō)變量已經(jīng)不存在了,自然就沒有取值了.所以下面

代碼輸出為null

System.out.println(wrf.get());

注意點(diǎn):

gc回收的內(nèi)存是只針對(duì)堆里面的,

  所以假如我們一開始的變量是這樣創(chuàng)建的,是可以被回收的.

String text=new String("123");

  但是假如我們的變量是這樣子創(chuàng)建了,gc就無(wú)法回收內(nèi)存了,而且弱引用仍舊可以輸出123的值

String text="123"

  這代碼只是在常量池里面創(chuàng)建了常量123,并沒有在堆里面創(chuàng)建了變量new String,所以只針對(duì)堆的內(nèi)存回收的gc自然就不起效果了,也就導(dǎo)致了常量123沒有被回收,所以弱引用還可以輸出值

 

Java培訓(xùn)教程:Java的引用類型

   以上就是動(dòng)力節(jié)點(diǎn)Java培訓(xùn)機(jī)構(gòu)小編介紹的“Java培訓(xùn)教程:Java的引用類型”的內(nèi)容,希望對(duì)大家有幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。

       Java全套自學(xué)資料

       Java自學(xué)視頻教程(免費(fèi)下載學(xué)習(xí)):http://www.ilovecolors.com.cn/video.html

      Java技術(shù)教程:http://www.ilovecolors.com.cn/tutorial/

 

 相關(guān)文章

零基礎(chǔ)怎么自學(xué)Java,完整版Java學(xué)習(xí)路線圖

你還在糾結(jié)學(xué)Java,是自學(xué)還是去培訓(xùn)班嗎

一個(gè)標(biāo)準(zhǔn)的Java程序員如何進(jìn)階?

Java學(xué)習(xí)路線清單,快速進(jìn)階Java

Java編程初學(xué)者要如何進(jìn)階

 

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 亚洲欧美在线综合一区二区三区 | 噜噜色噜噜| 久久激情五月 | 亚洲成人福利 | 中文字幕亚洲视频 | 羞羞视频免费在线观看 | 国产成人欧美视频在线 | 黄色片免费网址 | 特级深夜a级毛片免费观看 特级中国aaa毛片 | 久久激情影院 | 一级欧美| 欧美日韩在线播放一区二区三区 | a级男女性高爱潮高清试 | 亚洲激情五月 | 26uuu另类欧美亚洲曰本 | 涩涩涩丁香色婷五月网视色 | 午夜在线免费观看 | 最近最新中文字幕高清免费 | 久久亚洲精品成人综合 | 天干天干夜天干天天爽 | 国产高清专区 | 免费羞羞视频网站 | 成功精品影院 | 一区二区欧美视频 | 性网站免费 | 国产1页| 日日干天天射 | 国产一级视频播放 | 99re久久在热线播放最新地址 | 成人在线91 | 国产欧美日韩不卡在线播放在线 | 三级黄网站 | 国产精品9999 | 羞视频在线观看 | 天天摸天天躁天天添天天爽 | 亚洲视频在线观看一区 | 久久这里只有精品免费播放 | 天天爱天天做天天干 | 激情综合亚洲 | 日韩免费 | 成人高清在线 |