java中的引用

111 阅读1分钟

强引用:gc 宁愿抛出oom异常也不会回收对象

软引用:当虚拟机内存不足的情况下  会首先回收软引用对象

弱引用:当gc 扫描到弱引用就会回收

 

引用优先级:强引用>软引用>弱引用

但是回收都会又有个前提:当一个对象既有强引用 ,又有其他引用时,则以优先级更高的强引用为准,不会回收对象,也就是说一个优先级高的还在持有其对象,则对象的生命周期以优先级高的引用为准