Java虚拟机Java的四种引用级别

Posted 安卓笔记侠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java虚拟机Java的四种引用级别相关的知识,希望对你有一定的参考价值。

1.前言

  HotSpot采取了可达性分析算法用来判断对象是否被能被GC,无论是引用计算法还是可达性分析算法都是判断对象是否存在引用来判断对象是否存活。如果reference类型的数据中存储的数值代表的是另外一块内存的起始地址,就称这块内存代表着一个引用。为了丰富的描述对象与对象之间的关系,更为了实现系统缓存的原因,Java建立了四种引用级别。

 

2.四种引用级别

    在JDK1.2后,Java对引用的概念进行了扩充,将引用分为强引用、软引用、弱引用和虚引用4种,这4种引用强度依次减弱。

 

    最后,下面通过图来理解一下JVM回收机制究竟如何区别对待各种引用类型的:

 

以上是关于Java虚拟机Java的四种引用级别的主要内容,如果未能解决你的问题,请参考以下文章

Java的四种引用方式

Java中的四种引用类型比较

深入理解JVM虚拟机13:再谈四种引用及GC实践

面试重点:Java虚拟机篇

java中的四种引用

Java虚拟机详解——JVM常见问题总结