强引用
- 强引用可直接访问目标对象
- 强引用所指向的对象在任何时候都不会被系统回收,注:可能会出现OOM
- 强引用可能导致内存泄漏
软引用
软引用比强引用弱点的引用。一个对象持有软引用,当内存空间不足时对象会被回收。软引用使用java.lang.ref.SoftReference类实现
弱引用
在jvm GC时只要发现弱引用就会回收对象。 弱引用使用java.lang.ref.WeakReferene类实现
虚引用
最弱的引用类型, 虚引用和没有引用几乎类似,虚引用随时有可能被回收。虚引用必须跟引用队列一起使用,能够实现回收过程的跟踪