【Java】Java中的引用类型

强引用(StrongReference)

通过new直接创建的对象,只要该对象还可以被其它对象使用或访问到,就不会被回收

软引用(SoftReference)

引用一个对象,该对象在系统内存溢出不足时,会自动进行回收

弱引用(WeakReference)

引用一个对象,该对象在虚拟机进行GC时,一定会被回收

虚引用(PhantomReference)

不引用对象,但会关联对象和一个引用队列,当该对象被回收时,会将自己加入到引用队列中

这个特性用来记录对象被回收的情况,当引用队列中多出一个reference时,就表明其关联的对象已经被回收了

如果我们担心忘记回收某个对象,可以使用此特性来记录

我们也可以利用此特性,在发现某个对象被回收时,释放预期相关的资源

相关推荐
L.EscaRC11 分钟前
Spring Boot 自定义组件深度解析
java·spring boot·后端
pengzhuofan17 分钟前
IntelliJ IDEA 常用快捷键
java·ide·intellij-idea
ANGLAL19 分钟前
17.MyBatis动态SQL语法整理
java·sql·mybatis
SheepHappy33 分钟前
MyBatis-Plus 源码阅读(二)代码生成器原理深度剖析
java·源码阅读
雨白43 分钟前
重识 Java IO、NIO 与 OkIO
android·java
light_in_hand44 分钟前
内存区域划分——垃圾回收
java·jvm·算法
金銀銅鐵1 小时前
[Java] JDK 9 新变化之 Convenience Factory Methods for Collections
java·后端
用户7406696136251 小时前
入门并理解Java模块化系统(JPMS)
java
金銀銅鐵1 小时前
[Java] 用 Swing 生成一个最大公约数计算器
java·后端
小安同学iter2 小时前
SQL50+Hot100系列(11.7)
java·算法·leetcode·hot100·sql50