java之final
final关键字可以修饰什么?
- 类
- 变量(成员变量、类变量)
- 方法
修饰类
如果你不希望你所写的类不能被继承,则你可以用final修饰你的类。比如Java中Math类是用final修饰的。
修饰变量
如果修饰的是成员变量,则必须在定义时或初始化块或构造器中赋值初始化。类变量则必须在静态代码块或定义时被赋值初始化。如果不初始化,Java会用默认值初始化,final修饰变量的意义也就没有了。
final修饰的变量“宏替换”功能之条件:
- 必须用final修饰
- 定义时被初始化
- 初始值必须在编译时被确定下来(基本类型数据可在编译时就可以被确定下来)
修饰方法
如果你需要你的方法不能不可以被子类覆盖(重写Override),你可以用final修饰你的方法。