黑马程序员技术交流社区
标题: 谈谈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 |