强软弱虚四大引用

强引用:

如果一个对象具有强引用,垃圾回收器不会回收该对象,当内存空间不足时,JVM 宁愿抛出 OutOfMemoryError异常

java 复制代码
//  强引用
User user=new User();//user就是强引用

软引用:

如果一个对象只具有软引用,则内存空间足够,垃圾回收器就不会回收它,如果内存空间不足了,就会回收这些对象的内存

应用场景:内存敏感的高速缓存

弱引用:

在垃圾回收器线程扫描它所管辖的内存区域的过程中,一旦发现了只具有弱引用的对象,不管当前内存空间足够与否,都会回收它的内存。不过,由于垃圾回收器是一个优先级很低的线程,因此不一定会很快发现那些只具有弱引用的对象。

虚引用:

用来跟踪对象的垃圾回收。一般用于管理堆外内存

相关推荐
m0_7414817819 小时前
SQL嵌套查询逻辑重构_将复杂业务逻辑移至应用层
jvm·数据库·python
2303_8212873819 小时前
Golang log包如何打印日志_Golang日志输出教程【收藏】
jvm·数据库·python
m0_5913647319 小时前
mysql怎么处理连接数过多的报错_调整max_connections参数
jvm·数据库·python
m0_6908258219 小时前
Python Flask项目中如何管理数据库连接_使用SQLAlchemy连接池管理
jvm·数据库·python
阿正呀19 小时前
CSS如何规范化侧边栏的样式实现_基于BEM结构拆分侧边栏模块
jvm·数据库·python
2403_8832610919 小时前
JavaScript中Nodejs环境内存限制与V8堆大小调整
jvm·数据库·python
2401_8330336219 小时前
如何用 CSS 变量配合 JS setProperty 实现动态换肤功能
jvm·数据库·python
2401_8987176619 小时前
CSS实现自定义滚动条的定位悬浮_利用fixed定位与伪类
jvm·数据库·python
m0_7485548119 小时前
如何在 Discord.py 中限制按钮仅由特定角色用户点击
jvm·数据库·python
Jetev19 小时前
Golang怎么用embed嵌入配置文件_Golang如何将默认配置文件打包进二进制程序【技巧】
jvm·数据库·python