弱引用,软引用,幽灵的引用

弱引用 点击打开链接

软vs弱vs幻影引用
类型 目的 使用 当GCed 实现类
强引用 一个普通的参考。 保持活着,只要他们被引用的对象。 正常参考。 不指向任何对象都可以被回收。 默认的
软引用 保持对象存活提供有足够的内存。 继续活着即使客户删除对象引用(高速 缓存),以防客户再次要求他们的关键。 第一次gc通过后, JVM决定它仍然需要回收更多的空间。 java.lang.ref。SoftReference
弱引用 保持对象活着只有当他们在使用由客户(可以)。 自动删除对象不再使用的容器。 gc之后决定了只有弱可及对象 java.lang.ref。WeakReference 
java.util。WeakHashMap
幻影参考 让你清理结束后但在空间回收(取代 或扩大使用 完成 ()) 特殊的净化处理 后终结。 java.lang.ref。PhantomReference

弱引用是不阻止引用的对象被垃圾收集。 您可以使用 他们管理  HashMap  查找缓存的对象。 一个弱引用 这并不保持对象的引用它指活着。 弱引用不算作一个参考 垃圾收集。 如果对象没有引用其他地方,它将被垃圾收集。

的 gc 克 arbage ollection ) 将某种形式的吗 完成 消息对象,然后设置任何weakly-referencing 变量为空时处理的对象引用。 这允许 终结 逻辑 处理(如对象之前运行。 ,关闭一个文件如果还在营业,提交任何打开的事务,等等)。 Java版本 1.1 不支持通过非法Ref以外的弱引用类不支持下 Netscape。 弱引用到正式 JDK J艾娃 维 发展 它 1.2。 Java有三种 弱引用,称为软引用、弱引用和虚引用,以增加 的弱点。

Java的力量抓住对象的有四个订单。 按照降序排列 从最弱的:
  1. 的 JVM 艾娃 虚拟的 米 achine 直到)持有到普通对象 他们不再是可以通过客户或任何容器。 换句话说 对象被垃圾收集时,没有更多的生活引用它们。 死的引用不计数。
  2. 软引用可以从容器中删除,如果客户不再 引用他们,记忆很紧。
  3. 弱引用会自动从容器中删除客户就停止 引用它们。
  4. 幻影指向对象的引用已经死亡, 最终敲定。



软引用
软引用是允许你选择对象,只有在有足够的  内存 andom 一个 CCESS 米 埃默里 ) 。 Java的力量抓住对象的有四个订单。 按照降序排列 从最弱的:
  1. 的 JVM 艾娃 虚拟的 米 achine 直到)持有到普通对象 他们不再是可以通过客户或任何容器。 换句话说 对象被垃圾收集时,没有更多的生活引用它们。 死的引用不计数。
  2. 软引用可以从容器中删除,如果客户不再 引用他们,记忆很紧。
  3. 弱引用会自动从容器中删除客户就停止 引用它们。
  4. 幻影指向对象的引用已经死亡, 最终敲定。
软vs弱vs幻影引用
类型 目的 使用 当GCed 实现类
强引用 一个普通的参考。 保持活着,只要他们被引用的对象。 正常参考。 不指向任何对象都可以被回收。 默认的
软引用 保持对象存活提供有足够的内存。 继续活着即使客户删除对象引用(高速 缓存),以防客户再次要求他们的关键。 第一次gc通过后, JVM决定它仍然需要回收更多的空间。 java.lang.ref。SoftReference
弱引用 保持对象活着只有当他们在使用由客户(可以)。 自动删除对象不再使用的容器。 gc之后决定了只有弱可及对象 java.lang.ref。WeakReference 
java.util。WeakHashMap
幻影参考 让你清理结束后但在空间回收(取代 或扩大使用 完成 ()) 特殊的净化处理 后终结。 java.lang.ref。PhantomReference



幽灵的引用
幻影引用允许你做最后的润色关闭一个对象,即使它被宣布死亡 不再引用任何对象。 Java的力量抓住对象的有四个订单。 按照降序排列 从最弱的:
  1. 的 JVM 艾娃 虚拟的 米 achine 直到)持有到普通对象 他们不再是可以通过客户或任何容器。 换句话说 对象被垃圾收集时,没有更多的生活引用它们。 死的引用不计数。
  2. 软引用可以从容器中删除,如果客户不再 引用他们,记忆很紧。
  3. 弱引用会自动从容器中删除客户就停止 引用它们。
  4. 幻影指向对象的引用已经死亡, 最终敲定。
软vs弱vs幻影引用
类型 目的 使用 当GCed 实现类
强引用 一个普通的参考。 保持活着,只要他们被引用的对象。 正常参考。 不指向任何对象都可以被回收。 默认的
软引用 保持对象存活提供有足够的内存。 继续活着即使客户删除对象引用(高速 缓存),以防客户再次要求他们的关键。 第一次gc通过后, JVM决定它仍然需要回收更多的空间。 java.lang.ref。SoftReference
弱引用 保持对象活着只有当他们在使用由客户(可以)。 自动删除对象不再使用的容器。 gc之后决定了只有弱可及对象 java.lang.ref。WeakReference 
java.util。WeakHashMap
幻影参考 让你清理结束后但在空间回收(取代 或扩大使用 完成 ()) 特殊的净化处理 后终结。 java.lang.ref。PhantomReference


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值