Java中一共有四种类型的引用:
● StrongReference:是Java的默认引用实现,它会尽可能长时间的存活于JVM内,当没有任何对象指向它时将会被GC回收
● SoftReference
● WeakReference:顾名思义,是一个弱引用,当所引用的对象在JVM内不再有强引用时,将被GC回收
● PhantomReference
虽然WeakReference与SoftReference都有利于提高GC和内存的效率,但是WeakReference,一旦失去最后一个强引用,就会被GC回收,而SoftReference会尽可能长的保留引用直到JVM内存不足时才会被回收(虚拟机保证),这一特性使得非常适合缓存应用。
网友评论