垃圾回收机制主要包括以下两种情况:
1对象超过其作用范围,则这个对象将被视为垃圾,内存被回收,如下所示
{
Example e = new Example();
。。。
}//当对象e超过其作用范围,内存将被回收
2.将对象赋值为null,内存被回收
{
Example e = new Example();
。。。
e = null;
}//当对象e被置为空,内存将被回收
虽然垃圾回收机制已经很完善了,但垃圾回收器只能回收那些有new操作符创建的对象,如果某些对象不是通过new在内存中获取一块内存,这种对象可能不会被垃圾回收机制所识别。所以在java中提供了一个finalize()方法,这个方法是Object类的方法,它被声明为protected,用户可以在自己的类中定义这个方法。 |