finalize()
方法在对象被垃圾回收之前调用。 它用于执行清理处理。 JVM 的垃圾收集器只收集那些由 new
关键字创建的对象。 所以如果创建了一个没有new
的对象,可以使用finalize
方法进行清理处理(销毁剩余的对象)。 清理处理是释放所有资源、网络的过程,这些资源、网络以前使用过但不再需要。 必须记住,它不是保留关键字,finalize
方法存在于对象类中,因此它在每个类中都可用,因为对象类是 java 中每个类的超类。 在这里,我们必须注意,既不能保证终结,也不能保证垃圾回收。 如下示例:
public class FinalizeTest {
int j=12;
void add()
{
j=j+12;
System.out.println("J="+j);
}
public void finalize()
{
System.out.println("Object is garbage collected");
}
public static void main(String[] args) {
new FinalizeTest().add();
System.gc();
new FinalizeTest().add();
}
}