Java基礎(chǔ)學(xué)習(xí):java引用數(shù)據(jù)類型

Java基礎(chǔ)學(xué)習(xí):java引用數(shù)據(jù)類型

深圳達(dá)內(nèi)教育      2022-04-07 02:21:01     2

Java基礎(chǔ)學(xué)習(xí):java引用數(shù)據(jù)類型,1.引用數(shù)據(jù)類型概論引用數(shù)據(jù)類型變量名這樣聲明的時(shí)候變量為null。引用數(shù)據(jù)類型變量名=new引用數(shù)據(jù)類型,例如Stringa=newString(

課程價(jià)格 請(qǐng)咨詢

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹


    1.引用數(shù)據(jù)類型概論


    引用數(shù)據(jù)類型變量名這樣聲明的時(shí)候變量為null。


    引用數(shù)據(jù)類型變量名=new引用數(shù)據(jù)類型,例如Stringa=newString("hi~")這時(shí)候內(nèi)存存儲(chǔ)如圖:



    這時(shí)候Stringa在棧內(nèi)存中聲明了一個(gè)內(nèi)存地址,內(nèi)存地址指向堆內(nèi)存中newString("hi~")聲明的對(duì)象。即變量名為引用的內(nèi)存地址。


    2.引用數(shù)據(jù)類型分類


    類



    接口


    接口不能直接new進(jìn)行實(shí)例化,可以引用實(shí)現(xiàn)接口的類。


    數(shù)組


   


    3.引用分類


    強(qiáng)引用(StrongReference)


    一般使用的引用Aa=newA();


    當(dāng)內(nèi)存空間不足,Java虛擬機(jī)寧愿拋出OutOfMemoryError錯(cuò)誤,使程序異常終止,也不會(huì)靠隨意回收具有強(qiáng)引用的對(duì)象來解決內(nèi)存不足的問題。


    一句話,空間不回收。


    軟引用(SoftReference)


    當(dāng)內(nèi)存空間不足時(shí),會(huì)回收軟引用對(duì)象。


    一句話,空間不足就回收。


   


    弱引用(WeakReference)


    在java垃圾回收期掃描它管轄的范圍之內(nèi)時(shí),發(fā)現(xiàn)弱引用,就進(jìn)行回收。


    一句話,發(fā)現(xiàn)就回收。



    虛引用(PhantomReference)


    虛引用并不會(huì)決定對(duì)象的生命周期。如果一個(gè)對(duì)象僅持有虛引用,那么它就和沒有任何引用一樣,在任何時(shí)候都可能被垃圾回收器回收。


    一句話,任何時(shí)候回收。


    虛引用必須要和ReferenceQueue一起使用。ReferenceQueue是一種隊(duì)列,java虛擬機(jī)將垃圾回收的對(duì)象放入其中。(ReferenceQueue也可以和軟引用或弱引用一起使用)。



    4.問題


    問題如下



    結(jié)果為:



 以上就是深圳達(dá)內(nèi)教育java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java基礎(chǔ)學(xué)習(xí):java引用數(shù)據(jù)類型”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。


Java基礎(chǔ)學(xué)習(xí)

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。