Java垃圾回收finalize()作用详解

高洛峰
高洛峰 原创
2017-01-17 15:46:47 1395浏览

finalize 方法使用案例

package test;
    
class TestGC {
  private String str = "hello";
    
  TestGC(String str) {
    this.str = str;
  }
    
  public void finalize() {
    System.out.println(str);
  }
}
    
public class Hello {
  /**
   * @param args
   */
  public static void main(String[] args) {
    // TODO 自动生成方法存根
    System.out.println("hello");
    
    TestGC test = new TestGC("test1");
    test = new TestGC("test2");
    test = null;//注释掉这一句,test1被回收。加上则先回收test2,后test1
    System.gc();
  }
}

finalize() 方法是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。

以上就是关于Java垃圾回收finalize()的用法介绍,希望对大家的学习有所帮助。

更多Java垃圾回收finalize()作用详解相关文章请关注PHP中文网!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。