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中文网!