当前位置: 首页 > wzjs >正文

深圳华企网站建设外链相册

深圳华企网站建设,外链相册,长沙优化网站厂家,wordpress 中文主题下载在java红有四种引用类型,分别是强引用、软引用、弱引用、虚引用。他们的主要区别是控制对象生命周期和垃圾回收的行为 1. 强引用(Strong Reference) 特点:最常见的引用类型。只要强引用存在,对象永远不会被垃圾回收。 …

  在java红有四种引用类型,分别是强引用、软引用、弱引用、虚引用。他们的主要区别是控制对象生命周期和垃圾回收的行为

  1. 强引用(Strong Reference)

  • 特点:最常见的引用类型。只要强引用存在,对象永远不会被垃圾回收。

  • 使用场景:日常开发中的普通对象引用。

  • 代码示例:

Object obj = new Object(); // 强引用
obj = null; // 手动断开引用后,对象可被回收

  2. 软引用(Soft Reference)

  • 特点:内存不足时会被回收(OOM 前触发)。适合实现内存敏感缓存。

  • 使用场景:缓存图片、临时数据等。

  • 代码示例:

import java.lang.ref.SoftReference;// 创建强引用对象
String strongRef = new String("Hello, Soft Reference!");
// 包装为软引用
SoftReference<String> softRef = new SoftReference<>(strongRef);strongRef = null; // 断开强引用// 获取对象(内存充足时返回对象,不足时返回 null)
String value = softRef.get();
if (value != null) {System.out.println(value); // 输出: Hello, Soft Reference!
} else {System.out.println("Object has been collected");
}

  3.弱引用(Weak Reference)

  • 特点:无论内存是否充足,下一次 GC 时立即回收。

  • 使用场景:实现弱关联(如 WeakHashMap 的键)。

  • 代码示例: 

import java.lang.ref.WeakReference;Object obj = new Object();
WeakReference<Object> weakRef = new WeakReference<>(obj);obj = null; // 断开强引用
System.gc(); // 触发 GC// 弱引用对象会被回收
System.out.println(weakRef.get()); // 输出: null

4. 虚引用(Phantom Reference) 

  • 特点:

    • 无法通过 get() 获取对象(始终返回 null)。

    • 对象被回收时,通过 ReferenceQueue 收到通知。

  • 使用场景:跟踪对象被回收的时机(如资源清理)。

    import java.lang.ref.PhantomReference;
    import java.lang.ref.ReferenceQueue;ReferenceQueue<Object> queue = new ReferenceQueue<>();
    Object obj = new Object();
    PhantomReference<Object> phantomRef = new PhantomReference<>(obj, queue);obj = null; // 断开强引用
    System.gc();// 检查引用队列(对象回收后,虚引用会入队)
    if (queue.poll() != null) {System.out.println("Object has been finalized and resources cleaned");
    }

    总之,他们的区别是,在内存回收的时机上不同,由上至下依次更容易被回收,强引用无法回收,可获取对象软引用内存不足时回收,可获取对象弱引用下一次GC时回收,可获取对象虚引用下一次GC时被回收,无法获取对象

    http://www.dtcms.com/wzjs/793815.html

    相关文章:

  • 文化传播做网站推广吗辽阳银梦网站建设
  • 清华大学绿色大学建设网站肇庆网站建设方案
  • 做电商在什么网站怎么做qq靓号网站
  • 营销网站制作公司网站关键词优化排名外包
  • 分析网站做的好坏物流网站建设相关的问题
  • 食品网站开发毕业设计扁平式网站
  • 吕梁市城乡建设局网站网站首页流程图
  • 外国网站的浏览器玩具公司网站建设方案
  • 一等一网站一个备案可以做几个网站吗
  • 网站栏目合理性安徽网站推广营销设计
  • 制作企业网站得多长时间seo的概念是什么
  • 陕煤建设集团韩城分公司网站财经大学网站建设
  • 做废旧回收哪个网站好太原百度快速排名
  • 仙游有人做网站内网 群晖 wordpress
  • 荣茂网站建设简单html网页制作代码
  • wordpress视频网站网站设计免费字体
  • 四川省城市建设培训中心 网站node 网站开发
  • 网站建设过程规划和准备阶段长沙地铁最新招聘500人
  • 经典手机网站连云港关键字优化资讯
  • 网站备案org外文网站制作
  • 广州seo网站策划wordpress 自动加标签
  • 重庆转店铺哪个网站平台好惠州惠城区建设网站
  • 郑州做网站公司msgg网页打不开网络正常怎么办
  • 特价流量网站可拖拽建设网站没有了吗
  • 网站开发人员的岗位有产品推广
  • 做物流运输网站电话服务器两个域名一个ip做两个网站
  • 羊坊店网站建设专业的魔站建站系统
  • 浦东区网站建设内部劵淘网站怎么做
  • 微信网站公众平台泰安房产中介公司
  • 鄂尔多斯网站推广广州十大科技公司