黑马程序员技术交流社区

标题: final, finally, finalize 的区别。 [打印本页]

作者: mars_b0ZZ0    时间: 2015-5-19 11:08
标题: final, finally, finalize 的区别。
本帖最后由 mars_b0ZZ0 于 2015-5-19 21:28 编辑

final,finally, finalize 的区别。:curse:

作者: hihiwjc    时间: 2015-5-19 12:25
final修饰符
1、  修饰变量或方法时,可以保证它们在使用中不被改变。被final修饰的变量必须在声明时给定初值,而在以后的引用中只能使用,不可修改。被声明为final的方法也同样只能使用,不能重载。
2、  修饰类时,就说明该类不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。
finally关键字
在异常处理时使用 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行(在catch中没有发生异常的情况下),然后控制就会进入 finally 语句块(如果有的话)。
finalize修饰符
这是一个方法名,finalize() 方法是在垃圾回收器删除对象之前对这个对象调用的。
由于Java的垃圾回收机制,不允许我们程序员直接对内存进行操作,但Java 允许使用 finalize() 方法在垃圾回收器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾回收器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2