黑马程序员技术交流社区

标题: 谈谈final, finally的差别。 [打印本页]

作者: yangjijin    时间: 2014-6-28 11:14
标题: 谈谈final, finally的差别。

final?修饰符(关键字)如果一个类被声明为final,意味着他不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,能确保他们在使用中不被改动。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载
finally?再异常处理时提供 finally 块来执行所有清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。

作者: itisdream    时间: 2014-6-28 12:57
这两关键字 只是长得像而已。。。
作者: 我为你着迷    时间: 2014-6-28 14:21
你自己都都说了啊 !  final是一个关键字 用于修饰类 方法和变量   被final修饰的类不能被继承   被final修饰的方法户可以被复写  被final修饰的变量是一个常量  不可以被改变。
而finally放在异常的语句中  一定会执行的代码都会在finally中  一般用于关闭资源 资源必须释放。
作者: 陈云阳    时间: 2014-6-28 16:31
:L这俩个压根就不一样,哪里能谈差别,
作者: blue_sky    时间: 2014-6-28 16:51
so,楼主是在这里自问自答。。。
作者: 诺诺    时间: 2014-6-28 17:59
没啥可比较吧。长得像而已,好比大木老师和JJ周杰伦,
作者: MageMind    时间: 2014-6-28 18:57
final 最终的 不可改变的       fianlly  一定会执行   一般用于关闭资源 资源必须释放。  
作者: 帅哥哥    时间: 2014-6-28 19:42
大家为什么总把这两个关键字放一起说啊,根本就风马牛不相及
作者: rekirt    时间: 2014-6-28 22:49
为什么没有人讨论一下,new关键字和void关键字的区别,,
作者: 天,殇心    时间: 2014-6-28 22:54
  final 用于声明属性,方法和类,分别表示属性不可变,方法不可覆盖,类不可继承。 内部类要访问局部变量,局部变量必须定义成final类型,例如,一段代码…… finally是异常处理语句结构的一部分,表示总是执行。加入在Catch里面有Return语句,请问Finally里面的代码还会执行吗,是在Return前,还是Return后? 会执行,在Return前执行准确答案:在Return之间执行






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