Java的四种引用方式是什么
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,本篇内容主要讲解"Java的四种引用方式是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java的四种引用方式是什么"吧!1.强引用(StrongRe
千家信息网最后更新 2025年01月24日Java的四种引用方式是什么5. 引用队列(ReferenceQueue)
本篇内容主要讲解"Java的四种引用方式是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java的四种引用方式是什么"吧!
1.强引用(StrongReference)
使用最普遍的引用。
只要引用链没有断开,强引用就不会断开。- 当内存空间不足,抛出
OutOfMemoryError
终止程序也不会回收具有强引用的对象。通过将对象设置为null来弱化引用,使其被回收
Object object = new Object();String str = "scc";//都是强引用
2.软引用(SoftReference)
对象处在有用但非必须的状态
只有当内存空间不足时, GC会回收该引用的对象的内存。
可以用来实现高速缓存(作用)--比如网页缓存、图片缓存
// 注意:wrf这个引用也是强引用,它是指向SoftReference这个对象的,// 这里的软引用指的是指向new String("str")的引用,也就是SoftReference类中TSoftReferencewrf = new SoftReference (new String("str"));
3.弱引用(WeakReference)
弱引用就是只要JVM垃圾回收器发现了它,就会将之回收。
非必须的对象,比软引用更弱一-些
GC时会被回
被回收的概率也不大,因为GC线程优先级比较低
适用于引用偶尔被使用且不影响垃圾收集的对象 使用:
MapactiveEngineResources = new HashMap<>();//ResourceWeakReference弱引用
4.虚引用(PhantomReference)
不会决定对象的生命周期
任何时候都可能被垃圾收集器回收
跟踪对象被垃圾收集器回收的活动,起哨兵作用
必须和引用队列
ReferenceQueue
联合使用
当垃圾回收器准备回收一个对象时,如果发现它还有虚引用,就会把这个虚引用加入到与之 关联的引用队列中。
程序可以通过判断引用队列中是否已经加入了虚引用,来了解被引用的对象是否将要被垃圾回收。如果程序发现某个虚引用已经被加入到引用队列,那么就可以在所引用的对象的内存被回收之前采取必要的行动。
Object obj = new Object();ReferenceQueue queue = new ReferenceQueue();PhantomReference reference = new PhantomReference(obj, queue);//强引用对象滞空,保留软引用obj = null;
5. 引用队列(ReferenceQueue)
无实际存储结构,存储逻辑依赖于内部节点之间的关系来表达
存储关联的且被GC的软引用,弱引用以及虚引用
到此,相信大家对"Java的四种引用方式是什么"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
对象
垃圾
队列
内存
方式
程序
缓存
存储
作用
内容
实际
指向
空间
回收器
收集器
关联
学习
实用
更深
必要
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
大学计算机基础数据库概念模式
华为网络安全官接受采访
地图纠偏数据库
中海油网络安全专家
网络技术配置路由器的代码
网络安全周主题2018
临时数据库哪个好
数据库中修改表的引擎
黑龙江网络软件开发方案
数据库专业的薪酬体系
计算机网络安全平时作业一
2020年高校网络安全事件
ubuntu 服务器管理
成都鲲鹏系列服务器多少钱
数据库日志收缩不了
心理健康网络安全班会
明源软件开发部
ibm服务器启动u盘按什么键
新乡市川海网络技术有限公司
va屏软件开发
dedecms数据库备份
新神魔大陆流放罪徒服务器
石家庄软件开发简介
万方数据库含金量如何
网络安全教育宣传报道
心理健康网络安全班会
生产服务器厂子多少钱
理想连线网络技术股份怎么样
计算机与网络技术专业如何
确保我市网络安全