有资料这样说
WeakReference :“弱引用”,即在引用对象的同时仍然允许对该对象进行垃圾回收。
意思是不是说,某个对象正在使用中,如果这时内存回收机制执行了,此对象也可以被干掉。
正在使用中的对象突然没有了,这样程序不就出错了吗?
对弱引用没有明白,到底应该如何理解?
或者可不可以理解成为“休眠”,没有地方使用此“弱引用”时,该“弱引用”就处于“休眠”状态,此时占用内存很小或者不占用内存,其他地方需要时,才激活此“休眠“??
举个例子,如果有一天你发现程序出现了内存泄露,你怀疑是A对象发生了残留,但并无法确定,这时你可以对A对象生成一个弱引用~假如这个弱引用一直存在,那么说明A对象确实为泄露的对象,反之则说明A对象没有发生残留.