黑马程序员技术交流社区

标题: final关键字 [打印本页]

作者: 1315317959    时间: 2015-5-30 21:46
标题: final关键字

final关键字:
                 最终的意思。它可以修饰类,修饰变量,修饰成员方法。

                它修饰的成员方法是不可以被子类重写的。
                它修饰的成员变量其实是一个常量。
                它修饰的类,不能被继承,但是可以继承其他类。
作者: 3178394708    时间: 2015-5-30 21:48
格式跟咱们定义常量一样,加一个final即可。
                        比如final int A = 10;
作者: lizhi    时间: 2015-5-30 22:13
1315317959 发表于 2015-5-30 21:46
final关键字:
                 最终的意思。它可以修饰类,修饰变量,修饰成员方法。


非常好,在用的时候一定要记得喔
作者: luxinyu    时间: 2015-5-30 22:15
感觉和以前c++常量是一个意思
作者: 我心依旧0329    时间: 2015-5-30 22:29
感谢分享!
作者: 1315317959    时间: 2015-5-30 22:36
luxinyu 发表于 2015-5-30 22:15
感觉和以前c++常量是一个意思

上学的时候学过C++   但是没听进去  表示还是一窍不通啊
作者: hieiyukina    时间: 2015-5-30 22:41
学习一下 谢谢分享
作者: luxinyu    时间: 2015-5-30 23:02
final方法
将方法声明为final,那就说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从此类继承的类来覆写这个方法,但是继承仍然可以继承这个方法,也就是说可以直接使用。另外有一种被称为inline的机制,它会使你在调用final方法时,直接将方法主体插入到调用处,而不是进行例行的方法调用,例如保存断点,压栈等,这样可能会使你的程序效率有所提高,然而当你的方法主体非常庞大时,或你在多处调用此方法,那么你的调用主体代码便会迅速膨胀,可能反而会影响效率,所以你要慎用final进行方法定义。
final类
当你将final用于类身上时,你就需要仔细考虑,因为一个final类是无法被任何人继承的,那也就意味着此类在一个继承树中是一个叶子类,并且此类的设计已被认为很完美而不需要进行修改或扩展。对于final类中的成员,你可以定义其为final,也可以不是final。而对于方法,由于所属类为final的关系,自然也就成了final型的。你也可以明确的给final类中的方法加上一个final,但这显然没有意义。
作者: !85684009ex    时间: 2015-5-31 07:19
膜拜大神!!!谢谢你!
作者: jiatengde    时间: 2015-5-31 10:08
新人报道正在努力中
作者: 325122062q    时间: 2015-5-31 11:53
来学习   
作者: 挖煤黑小伙    时间: 2015-5-31 12:12
正在努力学习中
作者: 小车车    时间: 2015-5-31 12:25
C++的是const。被final定义的,就是常量!
作者: 牧师1990    时间: 2015-5-31 13:01
方法中的局部内部类访问方法中的成员变量时,此变量要用final修饰
作者: canyellwang    时间: 2015-5-31 13:25
感谢楼主总结                        
作者: 破烂小白    时间: 2015-5-31 13:31
可以理解为只读呗!!!
作者: cieadgbohf    时间: 2015-5-31 14:24
好像可以吧
作者: 13699266500    时间: 2015-5-31 20:15
顶一下吧!!
作者: yang2015    时间: 2015-5-31 20:30
顶一下!!!
作者: 守株人    时间: 2015-5-31 21:35
谢谢分享
作者: 柒仴、看雲佉    时间: 2015-6-1 00:15
牛的不要不要的
作者: 谢晓明    时间: 2015-6-1 01:14
总结得很不错




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