强引用:代码之中普遍存在,类似“Object obj = new Object()”这类的引用,只要强引用存在,垃圾收集器永远都不会回收这类引用的对象。
软引用:用来描述一些还有用但是并非必须的对象。 如果一个对象只具有软引用,则内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存。
弱引用:被引用关联的对象只能存活到下一次垃圾回收之前。
虚引用:为这个对象设置引用的唯一目的就是能在这个对象被收集器回收时收到一个系统通知。
摘自:《深入理解Java虚拟机》第二版
本文详细介绍了Java中的四种引用类型:强引用、软引用、弱引用和虚引用的特点及应用场景。强引用是普遍存在的引用形式,只要存在强引用,垃圾收集器永远不会回收这类对象。软引用适用于描述有用但非必需的对象,可用于实现内存敏感的高速缓存。弱引用的对象只能存活到下一次垃圾回收之前。虚引用主要用途是在对象被收集器回收时收到系统通知。
3358

被折叠的 条评论
为什么被折叠?



