黑马程序员技术交流社区

标题: 终极类、终极方法 [打印本页]

作者: yin1031468524    时间: 2013-6-2 13:10
标题: 终极类、终极方法
本帖最后由 yin1031468524 于 2013-6-4 12:15 编辑

一点关于类的小疑惑:什么是终极类、终极方法和终极变量?定义终极类型的目的是什么?
作者: 花心々小土豆    时间: 2013-6-2 13:22
类名或方法或变量声明时被final修饰就成终极**了。
定义终极类型的目的就是类名方法或变量不被继承,不被修改。
作者: 孔雀东南飞    时间: 2013-6-2 13:26
是关键字final:
用final修饰的类,也叫终极类,该类不能被继承。
用final修饰的方法,不能被子类重写。
用final修饰的成员变量,可以称作为常量了,因为该变量只能赋值一次。

至于目的,我不想该类被继承,我就用final来修饰,也可以说是一种保护作用。
作者: 王瀛    时间: 2013-6-2 13:35
最终类是被final修饰的类,即:final class 类名{}

关于final的几个注意的地方:
1.final修饰类后,该类不可被继承。如String类、StringBuffer类、StringBuilder类等都是final修饰的
2.final修饰方法后,该方法不可被复写。可以看作是父类把这个方法保护起来了,不让子类去更改。
3.final修饰变量后,该变量成为常量,只可赋值一次,之后不可被更改。一般用于一些有特殊意义的常量上,比如:派 3.14......  重力加速度 9.8  或者是根据实际项目需求定义的一个常量

在内部类中,如果内部类被定义在外部类的方法中,即,内部类在外部类的局部位置时,如果想要访问所在局部的局部变量,该变量必须被final修饰。
作者: 王鑫    时间: 2013-6-2 14:21
final可以修饰类、函数和变量。
被final修饰的类不可以被继承,这样就避免了该类中的所有方法被子类重写。
被final修饰的函数不可以被重写,用于控制父类中的个别方法被子类重写。
被final修饰的变量是一个常量,只能赋值一次。用于描述现实中固定的数值,比如圆周率PI=3.14。
作者: Sword    时间: 2013-6-2 14:39
如果问题已解决,请重新编辑帖子改为“已解决”,否则继续追问,谢谢合作!
关于把"未解决"的问题修改成"已解决"的说明 :http://bbs.itheima.com/thread-49464-1-1.html




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