美文网首页
3. 几种对象引用强度

3. 几种对象引用强度

作者: 42cc8919e42f | 来源:发表于2019-03-14 01:40 被阅读0次

强引用(Strong Reference)

  • 只要引用存在,即使内存溢出也不会将该对象回收
  • 使用构造器创建的对象

软引用(Soft Reference)

  • 内存即将溢出前的那一次 GC 会将该引用回收,通常用作高速内存缓存
  • 使用SoftReference 类来实现

弱引用(Weak Reference)

  • 只要发生 GC 就会被回收
  • 使用 WeakReference 类来实现

虚引用(Phantom Reference)

  • 唯一会发生得就是该对象被回收时会收到系统通知。使用虚引用的目的就是为了得知对象被 GC 的时机,所以可以利用虚引用来进行销毁前的一些操作,比如说资源释放等。这个虚引用对于对象而言完全是无感知的,有没有完全一样,但是对于虚引用的使用者而言,就像是待观察的对象的把脉线,可以通过它来观察对象是否已经被回收,从而进行相应的处理。
  • 虚引用不能直接放在 PhantomReference 中,而是必须放在一个 ReferenceQueue 队列中

相关文章

  • 3. 几种对象引用强度

    强引用(Strong Reference) 只要引用存在,即使内存溢出也不会将该对象回收 使用构造器创建的对象 软...

  • (十二)golang gc分析

    垃圾回收算法 业界常见的垃圾回收算法有以下几种:引用计数:对每个对象维护一个引用计数,当引用该对象的对象被销毁时,...

  • Android面试一问一答:引用类型

    引用类型都有哪几种 强引用 软引用 弱引用 虚引用 都有什么区别 强引用引用的对象:就算抛出OOM,也不会被回收。...

  • java中的引用

    Java 中除了强引用之外,还提供了其它低级别的引用 对象可达状态: 在强引用之外,弱引用可以泛化成多种不同强度的...

  • React Native StryleSheet 实践总结

    1) 引入样式 2) 创建样式 3) 调用样式的几种方式 单个样式引用(对象) 多个样式引用(数组) 条件样式 ...

  • 【3】内存回收

    什么样的对象要回收? 当然是死掉的对象,那么,怎么判断是死掉的对象?有几种方法: 1.引用计数法 对象有一个引用计...

  • ☆技术问答集锦(17)JVM垃圾回收

    1 判断对象是否可回收有几种方式? 引用计数算法 优点:实现简单,判定高效;缺点:很难解决对象之间相互循环引用的问...

  • 理解Java四种引用类型——强软弱虚

    Java中引用分为4种类型,按照引用强度递减分别是强引用、软引用、弱引用、虚引用。这里引用强度指的是被gc回收的存...

  • 第八周 Java基础知识学习(引用,单例)

    话题:Java基础知识学习 1、Java中有哪几种引用?它们的含义和区别是什么? 强引用 只要某个对象有强引用与之...

  • JVM  GC(垃圾收集)机制

    垃圾收集机制 需要被收集的垃圾: 1.没有引用指向的对象。2.两个对象互相引用,且没有外部引用指向他们。3. 多个...

网友评论

      本文标题:3. 几种对象引用强度

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