本帖最后由 李盼 于 2012-6-19 11:10 编辑
final :修饰符 ,表示最终的
如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承,因为他是最终类,不需要子类来完善。
所以一个类不能既被声明为 abstract的,又被声明为final的。
将变量定义为final,可以保证它们只能被赋值一次,以后值都不能被改变。
被声明为final的方法也同样不能被子类被复写。
finally异常处理时,中断了代码执行。finally代码块也是必须被执行的。通常用来关闭一些资源!
finalize是一个方法名。 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要执行的方法。它是在 Object 类中定义的,因此所有的类都继承了它。我们可以覆盖此方法,以便达到当对象被垃圾回收器回收之前,一定要执行一次这个方法中的内容。
public class Test {
public static void main(String[] args)
{
new A();
System.gc(); //调用垃圾回收器,这个时候我们没有调用A的finalize方法,但是在垃圾回收器回收这个A对象时,A一定会指定一次finalize方法
} //所以输出结果就是hello
}
class A
{
protected void finalize()
{
System.out.println("hello");
}
} |