jdk中的引用

java引用

jdk中将引用分为四种

  • 强引用(Strong Reference):是程序中普遍存在的,类似Object obj = new Object(),只要强引用存在,那么垃圾收集器就不会回收掉被引用的对象。
  • 软引用(Soft Reference):软引用对象在系统内存溢出前,将这些对象进行范围之中的二次回收,如果回收后还没有足够内存,就会抛出内存溢出异常。
  • 弱引用(Weak Reference):弱引用只能生存到下一次垃圾收集发生前无论内存是否足够都会被回收掉。
  • 虚引用(PhantomReference):称为幽灵引用或者幻影引用,最弱的一种引用关系。对象存在虚引用对其生存时间不构成影响,也无法通过虚引用获取一个对象实例。唯一目的就是在这个对象呗收集器回收的时候收到系统通知。