美文网首页
Java基础-Weakreference

Java基础-Weakreference

作者: 16325 | 来源:发表于2020-02-28 16:50 被阅读0次

    强引用

    被强引用指向的对象,绝对不会被垃圾收集器回收。Integer prime = 1;,这个语句中prime对象就有一个强引用。

    软引用

    被SoftReference指向的对象可能会被垃圾收集器回收,但是只有在JVM内存不够的情况下才会回收;如下代码可以创建一个软引用:

    Integer prime = 1;  
    SoftReference<Integer> soft = new SoftReference<Integer>(prime);
    prime = null;
    

    弱引用

    当一个对象仅仅被WeakReference引用时,在下个垃圾收集周期时候该对象就会被回收。我们通过下面代码创建一个WeakReference:

    Integer prime = 1;  
    WeakReference<Integer> soft = new WeakReference<Integer>(prime);
    prime = null;
    

    当把prime赋值为null的时候,原prime对象会在下一个垃圾收集周期中被回收,因为已经没有强引用指向它。

    相关文章

      网友评论

          本文标题:Java基础-Weakreference

          本文链接:https://www.haomeiwen.com/subject/qrblhhtx.html