-final 关键字
1)什么是 final 关键字
final 是关键字也是一个修饰符,能修饰类、方法、属性、局部变量(参数)
final 是最终的意思
2)final 修饰类
final 修饰类,这个类不能被继承
final class XXX{} 含义为不允许这个类被继承
原因:如果程序要为了一个类中的某个功能而继承这个类的话,会增加程序的架构的复杂度
3)final 修饰方法
格式:
public final void XXX(){
}
final修饰方法 ,这个类的子类中不允许重写这个方法
可以防止无意识的重写
4)final 修饰成员变量(属性)
private final int a = 0;
被 final 修饰的属性的属性值不允许修改
- 被 final 修饰的属性在对象被实例化之前必须被赋值
//1.声明的同时赋值 final int a = 0;
//2.构造方法中赋值
final int a;
public XX(){
a=0;
}//无参构造也要赋值
5)final 修饰局部变量
修饰方法中声明的局部变量,这个变量将只能被赋值一次,修饰方法的形式参数
6)final 修饰引用类型
final Dog d = new Dog();
d的引用不能换变
(eg:不能换狗),其属性还是能改