Java類型一般有兩種,即基本數(shù)據(jù)類型與引用數(shù)據(jù)類型。其中,引用數(shù)據(jù)類型在存儲堆中對需要引用的對象進行引用。引用是Java面向?qū)ο蟮囊粋€特點,在Java入門中,我們會接觸到四種Java的引用類型,具體包括這幾個:
1、強引用
強引用是一種常見的引用形式,同時也較為普遍。如果內(nèi)存空間不足,Java虛擬機將會拋出OutOfMemoryError錯誤,從而程序?qū)惓MV埂0岩粋€對象賦給一個引用類型變量,則為強引用。強引用的對象是不可以GC回收的,不可以隨意回收具有強引用的對象來解決內(nèi)存不足的問題。在Java中,強引用是一種默認的狀態(tài),除非JVM虛擬機停止工作。
2、弱引用
弱引用的特點就是引用對象的生命周期較短。G回收器在掃描內(nèi)存區(qū)域是若發(fā)現(xiàn)弱引用,即便是內(nèi)存空間還足夠使用,弱引用對象都會被回收。但弱引用對象也可以加入隊列,這樣就可以不被回收。
3、軟引用
軟引用和強引用不同,如果內(nèi)存空間足夠多,一個對象被軟引用,則垃圾回收器不會將其回收;如果內(nèi)存空間不足,這些引用對象就會被回收。它可用來較為敏感的高速緩存,虛擬機可以將軟引用加入到與之向關(guān)聯(lián)的隊列。
4、虛引用
虛引用的對象可以說是形同虛設(shè)。為什么這么說?因為虛引用不會決定對象的生命周期,并且虛引用等于沒有引用,隨時都可以被GC回收。
了解Java的四種引用類型是Java入門學習的重要部分。在粵嵌進行Java培訓的過程中,要是對這部分不清楚,一定要多與老師或者同學進行交流,這樣才能不斷提高自己的能力,對Java后期的進階學習也會有幫助。