Java的4种引用类型
在Java种对象的操作都是通过该对象的索引(Reference)实现的,Java的引用类型有4种,分别为强引用、弱引用、虚引用
强引用
在Java种强引用是最常见的,把一个对象赋给一个引用变量的时候,这个引用变量就是强引用,有强引用的对象一定为可达性状态,不会被垃圾回收机制回收,因此强引用时早餐Java内存泄漏(Memory) Leak最主要的原因。
软引用
软引用时通过SoftReference类实现,如果一个对象只有软引用,则在系统内存不足的时候将对象回收。
弱引用
弱引用通过WeakReference类实现,如果一个对象只有弱引用,则在垃圾回收过程中一定被会被回收
虚引用
虚引用通过PhantomReference类实现,虚引用和引用队列联合使用,主要用于跟踪对象的垃圾回收状态。