标签:java
Java的垃圾回收器在回收某个对象的内存之前,会调用finalize()方法进行资源清理。
如果程序在终止之前始终没有进行垃圾回收,那么对象的finalize()是始终不会调用的。
关于finalize()我们有以下几点说明:
public class StringDemo { private static StringDemo demo = null; public static void main(String[] args) { System.out.println("new=" + new StringDemo()); System.out.println("new=" + new StringDemo()); System.out.println("new=" + new StringDemo()); System.gc(); System.runFinalization(); demo.info(); } public void info() { System.out.println("-----info-----"); } @Override protected void finalize() throws Throwable { demo = this; System.out.println("this=" + this); System.out.println("demo=" + demo); } }
标签:java
原文地址:http://blog.csdn.net/zhaokaiqiang1992/article/details/42293291