引⽤类型主要分为强软弱虚四种:
1. 强引⽤指的就是代码中普遍存在的赋值⽅式,⽐如A a = new A()这种。强引⽤关联的对象,永远不会被GC回收。
2. 软引⽤可以⽤SoftReference来描述,指的是那些有⽤但是不是必须要的对象。系统在发⽣内存溢出前会对这类引⽤的对象进⾏回收。
3. 弱引⽤可以⽤WeakReference来描述,他的强度⽐软引⽤更低⼀点,弱引⽤的对象下⼀次GC的时候⼀定会被回收,⽽不管内存是否⾜够。
4. 虚引⽤也被称作幻影引⽤,是最弱的引⽤关系,可以⽤PhantomReference来描述,他必须和ReferenceQueue⼀起使⽤,同样的当发⽣GC的时候,虚引⽤也会被回收。可以⽤虚引⽤来管理堆外内存。
网友评论