package struct;import com.sun.xml.internal.ws.api.streaming.XMLStreamWriterFactory;public class SwitchDemo1 { public static void main(String[] args){ ...
- 強引用:最常見且使用最多的,如果引用關係還在,垃圾收集器就永遠不會回收被引用的對象,出現OOM也不會回收;
- 軟引用:只被軟引用關聯的對象,在即將發送OOM時,垃圾收集器會將對象回收,一般使用場景是一些還有用,但是又不是必須的對象;
- 弱引用:只被弱引用關聯的對象,在垃圾收集器工作的時候就會被回收,一般使用場景是在非必要對象;
- 虛引用:為一個對象設置虛引用關聯的唯一目的只是為了能在這個對象被收集器回收時收到一個系統通知,主要就是跟蹤對象被垃圾回收的狀態。
參考:深入理解Java虛擬機:JVM高級特性與最佳實踐(第3版)