强引用,最常用,最简单的。
A a = new A()
不会被垃圾回收机制回收,只有a=null 才会被销毁。
软引用,SoftReference变相的延长了其指示对象占据堆内存的时间,内存不足并且没有被强引用的时候会被回收。
A a = new A();
SoftReference<A> srA = new SoftReference<A>(a);
弱引用,没有强对象引用就会销毁,不改变原有强引用对象的垃圾回收时机
A a = new A();
WeakReference<A> wrA = new WeakReference<A>(a);
虚引用,不改变原有强引用对象的垃圾回收时机
PhantomReference(T referent, ReferenceQueue<? super T> q)
网友评论