码迷,mamicode.com
首页 > 其他好文 > 详细

强引用、软引用、弱引用、幻象引用有什么区别

时间:2019-05-29 10:35:00      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:weakref   lan   过程   lang   bsp   nbsp   赋值   溢出   oom   

1.强引用:正常使用过程中创建的对象一般都为强引用,强引用不会被JVM回收,即使触发OOM,也不会回收强引用的对象;当显式的将强引用的对象赋值为null的时候,JVM会在某个时间回收该对象;

 

2.软引用(SoftReference):在Java中用java.lang.ref.SoftReference类来表示,JVM会在内存快要溢出时回收;

 

3.弱引用(WeakReference):在Java中用java.lang.ref.WeakReference类来表示,无论JVM内存是否充足,弱引用对象都有可能被回收;

 

4.虚引用(PhantomReference):在Java中用java.lang.ref.PhantomReference类来表示,有的时候也称为幻象引用,不影响对象的生命周期,必须和引用队列关联使用,在任何时候都有可能被回收;

强引用、软引用、弱引用、幻象引用有什么区别

标签:weakref   lan   过程   lang   bsp   nbsp   赋值   溢出   oom   

原文地址:https://www.cnblogs.com/ywxaq/p/10942141.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!