天天看点

final,finalize,finally的区别

final

当这个关键字修饰一个类时,意味着他不能派生出新的子类

因此一个类abstract和final不能同时使用。

当final修饰变量或者方法时,可以保证他们在使用中不会被改变。被声明为final的变量必须在初始化时给定初值。同样,当final修饰一个方法时,这个方法不能被重载。

finally

异常处理(try...catch...finally)时提供finally来执行任何清楚操作。无论是否如何都会转入finally块。

finalize

finalize方法在垃圾回收器执行内存对象清理。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。

如果内存足够,filalize()可能永远不被执行。