美文网首页java面试题总结(基础篇)
14、 Java的四种引用,强弱软虚

14、 Java的四种引用,强弱软虚

作者: RUMyCola | 来源:发表于2022-08-05 08:17 被阅读0次

Java的四种引用,强弱软虚

强引用

      强引用是平常中使用最多的引用,强引用在程序内存不足(OOM)的时候也不会被回收,使用方式:

强引用

软引用

       软引用在程序内存不足时,会被回收,使用方式:

软引用

       可用场景:创建缓存的时候,创建的对象放进缓存中,当内存不足时,JVM就会回收早先创建的对象。

弱引用

        弱引用就是只要JVM垃圾回收器发现了它,就会将之回收,使用方式:

弱引用

        可用场景: Java源码中的 java.util.WeakHashMap 中的 key 就是使用弱引用,我的理解就是,一旦我不需要某个引用,JVM会自动帮我处理它,这样我就不需要做其它操作。

虚引用

        虚引用的回收机制跟弱引用差不多,但是它被回收之前,会被放入 ReferenceQueue 中。注意哦,其它引用是被JVM回收后才被传入 ReferenceQueue 中的。由于这个机制,所以虚引用大多、被用于引用销毁前的处理工作。还有就是,虚引用创建的时候,必须带有 ReferenceQueue ,使用例子:

虚引用

        可用场景:对象销毁前的一些操作,比如说资源释放等。 Object.finalize() 虽然也可以做这类动作,但是这个方式即不安全又低效.

上诉所说的几类引用,都是指对象本身的引用,而不是指Reference的四个子类的引用(SoftReference等).

相关文章

  • JAVA四种引用(强引用,弱引用,软引用,虚引用)

    JAVA四种引用(强引用,弱引用,软引用,虚引用) [toc] 参考:Java 的强引用、弱引用、软引用、虚引用四...

  • 14、 Java的四种引用,强弱软虚

    Java的四种引用,强弱软虚 强引用 强引用是平常中使用最多的引用,强引用在程序内存不足(OOM)的时候也不...

  • java引用

    Java的四种引用,强弱软虚,用到的场景 1.强引用:如果一个对象具有强引用,它就不会被垃圾回收器回收。即使当前内...

  • Java中的四种引用类型

    一、Java中的四种引用类型 JDK 1.2 开始 Java 提供了四种引用类型,分别是强引用、软引用、弱引用、虚...

  • java四种引用类型

    java中得四种引用 Java中有四种引用类型:强引用、软引用、弱引用、虚引用 强引用我们代码中常写,如: Obj...

  • 强、软、弱、虚引用的区别和使用

    原文阅读:强、软、弱、虚引用的区别和使用 Java提供了四种级别的应用类型:强引用、软引用、弱引用及虚引用。那么这...

  • Java的四种对象引用类型

    Java的四种对象引用类型:强引用、弱引用、软引用、虚引用。 强引用(StrongReference): 强引用是...

  • Java基础:Java的四种引用

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

  • Java如何有效避免OOM:善于利用软引用和弱引用

    从Java SE2开始,就提供了四种类型的引用:强引用、软引用、弱引用和虚引用。 四种引用类型的作用 Java中提...

  • Java的引用

    参考链接: Java到底是值传递还是引用传递 Java的四种引用方式 Java中的强引用、软引用、弱引用和虚引用 ...

网友评论

    本文标题:14、 Java的四种引用,强弱软虚

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