强引用Strong Reference:GC时不会被回收
软引用Soft Reference:描述有用但不是必须的对象,在发生内存溢出异常之前被回收
弱引用Weak Reference:描述有用但不是必须的对象,在下一次GC时被回收
软引用和弱引用适合用在加速的效果上的缓存引用
a 当内存充足起到系统加速的作用,
b 内存不足的时候,清楚以释放内存,避免内存溢出。
虚引用(幽灵引用/幻影引用)Phantom Reference :无法通过虚引用获得对象,用PhantomReference实现虚引用,虚引用用来在GC时返回一个通知。主要针对ByteBuffer直接内存的操作时使用。随时可能被垃圾回收。由于虚引用可以跟踪对象的回收时间,因此,也可以将一些资源释放操作放置在虚引用中执行和记录。