强引用、软引用、弱引用、虚引用是什么,有什么区别

参考答案

  • 强引用:指普通的对象引用关系。例如,String s = new String(“javamianshi”)
  • 软引用:用于维护一些可有可无的对象。只有在内存不足时,系统则会回收软引用对象,如果回收了软引用对象之后仍然没有足够的内存,才会抛出内存溢出异常。SoftReference 实现。
  • 弱引用:相比软引用来说,要更加无用一些,它拥有更短的生命周期,当 JVM 进行垃圾回收时,无论内存是否充足,都会回收被弱引用关联的对象。WeakReference 实现。
  • 虚引用:是一种形同虚设的引用,在现实场景中用的不是很多,它主要用来跟踪对象被垃圾回收的活动。PhantomReference 实现。

 

以上,是JVM面试题【强引用、软引用、弱引用、虚引用是什么,有什么区别】的参考答案。

输出,是最好的学习方法

欢迎在评论区留下你的问题、笔记或知识点补充~

—end—

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧