强,弱,软,虚引用

强引用

正常定义的对象引用。
回收条件:不在引用

弱引用(WeakReference)

可用来解决asynctask 内存泄漏的问题。在切换其他acitivty的时候,如果这个actiity已经destory了,就应该让它回收。此时如果我们用弱引用的话,就能防止不能被回收。
回收条件:一般在弱引用的同时,这个对象可能也被强引用了。如果这个强引用消失了,系统就开始回收弱引用。

软引用(SoftReference)

在内存紧张的时候,能为其他对象释放内存。
回收条件: 内存不够的时候回收

虚引用(PhantomReference)

随时回收,用途不明。
回收条件:无条件,随时回收。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容