zoukankan      html  css  js  c++  java
  • 判断对象存活的方法

     

    1.引用计数算法

    每当一个地方引用计数器加一,引用失效,计数器减1。

    不足:不能解决相互引用的问题。

    2.可达性分析算法

    通过GC Roots对象作为起始点,从这些点开始向下搜索,搜索走过的路径为引用链,当一个对象到GC Roots 没有任何引用链相连时,证明该对象不可用。(5,6,7虽然有关联,但是GC Roots 不可达,所以也会被回收)

    image

    可以作为GC Roots对象

    • a.虚拟机栈(栈帧中的本地变量表)中的引用对象
    • b.方法区中静态属性引用的对象
    • c.方法区中常量引用的对象
    • d本地方法栈中JNI引用的对象
    3.finalize的用法

    同一个对象只调用一次finalize方法。如果重写,会被显示调用,没有被重写,也会被调用。调用过的不再调用。

  • 相关阅读:
    洛谷
    洛谷
    洛谷
    洛谷
    洛谷
    模板
    模板
    模板
    洛谷
    模板
  • 原文地址:https://www.cnblogs.com/javabeginer/p/7211294.html
Copyright © 2011-2022 走看看