美文网首页
JVM读书笔记-引用-05

JVM读书笔记-引用-05

作者: 你缺少想象力 | 来源:发表于2019-01-18 11:34 被阅读0次

这里要谈的是Java的四大引用
分别是:
强引用、软引用、弱引用、虚引用

  1. 强引用
    引用中的铁头娃,头有多铁,给你见识一下,无论内存有多不够,对不起,绝对不会给你回收了,宁愿内存溢出,也不愿意回收这个对象。
  2. 软引用
    软引用就比较识抬举,当内存不够的时候,软引用的对象就会被回收掉,把空间腾出来。
  3. 弱引用
    弱引用比软引用更加地位低,只要垃圾回收到这里来了,这个就会被清理掉。所以它的存活时间仅仅到下次垃圾回收的时候。
  4. 虚引用
    看了弱引用你还能想到比弱引用更低级的引用吗,有啊,虚引用,虚引用低到什么程度,可以这样说,虚引用连创建对象的资格都没有,那存在的意义是啥,就只是告诉大家垃圾回收到这里了,给大家提个醒。

接下来我用通俗的方式把四大引用拟化成生活中的事情讲解一下,可以加深理解。

假设内存是一个房间,垃圾回收器是打扫清洁的清洁员。

  1. 强引用
    强引用就相当于房间中的家具,清洁员是不会将这些家具给清理掉的。即便整个房间都塞满家具,也不会清理掉这些家具。
  2. 软引用
    软引用相当于房间中的旧家具或者不那么重要的家具,这些家具被贴上这样的标签:“当房间剩余空间不够的时候,可以把我丢掉。”
  3. 弱引用
    弱引用就好像是房间中的真正的垃圾,只要清洁员来一次,就会清理一次。
  4. 虚引用
    虚引用真的是人如其名,虚幻的,啥也不算,啥都没有,甚至连占房间空间的资格都没有,就好像房间中的空气一样,默默看着清洁员一次又一次的来打扫,自己啥都不能干。

相关文章

  • JVM读书笔记-引用-05

    这里要谈的是Java的四大引用分别是:强引用、软引用、弱引用、虚引用 强引用引用中的铁头娃,头有多铁,给你见识一下...

  • JVM引用

    Java 执行GC判断对象是否存活有两种方式其中一种是引用计数 引用计数概念:JAVA Heap(堆)中每个对象有...

  • 强引用,软引用,弱引用,虚引用特点

    引用类型被回收时间强引用从来不会软引用内存不足时弱引用jvm垃圾回收时虚引用未知

  • JVM-引用

      Java引用类结构如下所示:   强引用:就算出现OOM也不对该对象进行回收,不进行GC。   软引用:系统内...

  • android的四种引用

    强引用:普通new对象的引用 User user = new User(); jvm宁愿抛出OutOfMemory...

  • JVM系列(5) JVM 的垃圾回收机制 (GC)

    1.2 JVM垃圾回收算法 JVM中数据类型 引用类型 demo https://www.jianshu.com/...

  • ThreadLocal 定义,以及是否可能引起的内存泄露(thr

    总结: JVM利用设置ThreadLocalMap的Key为弱引用,来避免内存泄露。 JVM利用调用remove、...

  • Java 基础

    抽象类与接口 引用强度:强引用 > 软引用 > 弱引用 > 虚引用 强引用不会被垃圾回收器回收,内存不足时,JVM...

  • Java基础:Java的四种引用

    在Java基础:java虚拟机(JVM)中,我们提到了Java的四种引用。包括:强引用,软引用,弱引用,虚引用。这...

  • 对象的引用

    一、概述 Java对象的引用:强引用,软引用,弱引用和虚引用。众所周知,Java中是JVM负责内存的分配和回收,这...

网友评论

      本文标题:JVM读书笔记-引用-05

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