Java中几个Reference常见的作用详解
发布时间 - 2026-01-11 01:53:40 点击率:次前言

Java中几个Reference作用,也是面试的时候经常问到的问题,以前总是记一次忘一次,现在有时间,索性写个demo测试一把。下面来一起看看详细的介绍:
具体代码如下:
JVM 参数: -Xmx10m -Xms5m -XX:+PrintGC
SoftReference的时候:
weakReference的时候:
StrongReference:
由于strong是JVM默认的,这里就不做了,直接就是一点都不会被回收,直至OOM
PhantomReference:
虚引用并不会改变内存回收机制,只是在回收的时候放到ReferenceQueue里通知用户可做一些额外操作,比如打印日志等
如下代码,本质上byte[]还是一个强引用的。
输出:
总结一下:
- StrongReference:JVM默认,除非GC时已无任何对象引用,否则即便是OOM也不会回收
- WeakReference:一旦没有被引用,GC时就会回收
- SoftReference:和strong一样,除非GC时已无任何对象引用,否则....在即将OOM前才会被回收,所以SoftReference一般可以用来做缓存
- sun.nio.ch.Util中就有private static ThreadLocal<SoftReference<SelectorWrapper>> localSelector
- = new ThreadLocal<SoftReference<SelectorWrapper>>();
- 用于临时的Selector。
- PhantomReference:通过构造函数的ReferenceQueue作为一个通知,用来在对象被回收时做额外的操作。
好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对的支持。
# java
# reference
# java中reference
# reference用法
# java中的Reference类型用法说明
# Java 中 Reference用法详解
# 详解java中Reference的实现与相应的执行过程
# 详解Java弱引用(WeakReference)的理解与使用
# java编程Reference核心原理示例源码分析
# 已无
# 几个
# 好了
# 就有
# 如有
# 才会
# 可以用
# 作为一个
# 不做
# 时就
# 这篇文章
# 来做
# 谢谢大家
# 问到
# 可做
# 本质上
# 只是在
# 即便是
# JVM
# center
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何快速配置高效服务器建站软件?
如何在Windows服务器上快速搭建网站?
如何将凡科建站内容保存为本地文件?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?
实例解析Array和String方法
如何在橙子建站上传落地页?操作指南详解
高端云建站费用究竟需要多少预算?
laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法
Laravel如何升级到最新版本?(升级指南和步骤)
Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】
如何在阿里云虚拟服务器快速搭建网站?
香港服务器租用每月最低只需15元?
如何在腾讯云服务器快速搭建个人网站?
html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】
长沙做网站要多少钱,长沙国安网络怎么样?
Laravel用户密码怎么加密_Laravel Hash门面使用教程
Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】
1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤
百度输入法ai组件怎么删除 百度输入法ai组件移除工具
使用豆包 AI 辅助进行简单网页 HTML 结构设计
Android实现代码画虚线边框背景效果
HTML 中动态设置元素 name 属性的正确语法详解
香港服务器如何优化才能显著提升网站加载速度?
PythonWeb开发入门教程_Flask快速构建Web应用
Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性
EditPlus中的正则表达式 实战(4)
如何在IIS中新建站点并配置端口与物理路径?
Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践
高端智能建站公司优选:品牌定制与SEO优化一站式服务
Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康
制作公司内部网站有哪些,内网如何建网站?
佛山企业网站制作公司有哪些,沟通100网上服务官网?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
如何在新浪SAE免费搭建个人博客?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
Laravel怎么判断请求类型_Laravel Request isMethod用法
如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框
如何为不同团队 ID 动态生成多个非值班状态按钮
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
什么是javascript作用域_全局和局部作用域有什么区别?
Laravel怎么导出Excel文件_Laravel Excel插件使用教程
javascript中的数组方法有哪些_如何利用数组方法简化数据处理
Laravel怎么使用Intervention Image库处理图片上传和缩放
微信小程序 配置文件详细介绍
Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面
javascript日期怎么处理_如何格式化输出
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
如何在宝塔面板中创建新站点?
如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】

