俗話(huà)說(shuō):"說(shuō)不如做,看書(shū)不如把代碼敲一遍。"對(duì)於三種常用的引用概念,本人還是覺(jué)得用代碼說(shuō)話(huà)比較實(shí)在。好,說(shuō)幹就幹!
1. 強(qiáng)引用,有人在引用我,我就不能被刪除。如下:

Sample Class
執(zhí)行以下代碼,A12沒(méi)有被回收,因此B12引用了A12。:

code
把注釋去掉,A12回收了。
2. 軟引用,沒(méi)有強(qiáng)引用的情況下,要等到記憶體不足的時(shí)候才會(huì)釋放。
JVM參數(shù):-Xms5M -Xmx5M

coe
輸出為:A12::finalize,null
下圖中,是不會(huì)被回收的,因?yàn)橛洃涹w還足夠。

code
3. 弱引用,沒(méi)有強(qiáng)引用的情況下,馬上回收。

code