5. Java的四种引用,强弱软虚,用到的场景

2016/9/26 21:39 下午 posted in  Java comments

Java对对象的引用分为四种:
1.强引用。强引用的对象不会被垃圾回收器回收。内存不足时,宁可抛出OOM错误也不会回收强引用。

2.软引用。可有可无的引用,当JVM内存足够的时候不会被回收;当JVM内存不足的时候,发现软引用的存在,会回收软引用。

3.若引用。可有可无的引用,一旦被垃圾回收器发现,马上就被其回收。

4.幽灵引用。它一般用来标记被回收的对象,当对象被回收后,会受到一条消息。虚引用与软引用和弱引用的一个区别在于:虚引用必须和引用队列 (ReferenceQueue)联合使用。