四种引用的简单笔记

直接记录代码片段:

public class Demo {

    public static void main(String[] args){
        //强引用。虚拟机宁愿宕机也不愿意回收它
        Object o = new Object();
        //软引用。要发生内存溢出时才回收它。软引用的使用场景在于网络(或数据库)访问与内存访问的折中选择
        SoftReference<Object> sr = new SoftReference<Object>(o);
        //弱引用。被GC发现,便回收它
        WeakReference<Object> wr = new WeakReference<Object>(o);
        //引用队列。对象被回收后将引用加入进来。
        ReferenceQueue<Object> rq = new ReferenceQueue<Object>();
        //虚引用。据说是一个形式。必须传递一个引用队列
        PhantomReference<Object> pr = new PhantomReference<Object>(0, rq);
    }

}

看了许多的博客,但只会使用强、软两种引用。其他两种引用还不大清楚具体使用场景。好像虚引用是在调试的时候才用的。

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

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,613评论 25 709
  • 总公司会议室内,慕怀渊一直皱着眉头,看来一上午的招聘,定是让他头疼不已,好在总裁也帮他一起筛选,不然估计到这时候定...
    蔷薇下的阳光阅读 399评论 2 3
  • 从18号到现在 已经和孙佳鑫认识五天了 说时间过的快 也很快 说慢的话 也才五天而已 这几天来 每天都 有很多很多...
    Leslier阅读 119评论 0 0
  • 你家的孩子是否总有一些奇怪的举动,让你哭笑不得?别急,或许是高智商天才呢。 高智商的孩子通常有以下表现: 1、酷爱...
    维他购阅读 218评论 0 1
  • 坚持原创分享第83天 去过各种海,气质各有所不同,三亚感觉像位气质优雅的贵族小姐,细腻而浪漫。就连大排档...
    我是一只没有脚的鸟阅读 296评论 0 0