3.4 final关键字
用于修饰 类 , 属性 , 方法 , 参数 .
/**
* final 用于 类 属性 方法
*/
// 修饰类 则该类不可被继承
public final class Door {
//修饰属性 则该属性不可变 ,
//定义就必须直接赋值或者在构造方法中进行赋值,并且后期都不能修改。
public static final int PP = 10;
//修饰方法 , 则该方法不可被重写
public final void open(){
System.out.println("不可被重写");
}
//修饰参数, 则该参数后期都不能修改
public final void open(final int i){//为了防止数据在方法体中被修改
i = 9; // 报错 不能修改值
System.out.println("啦啦啦");
}
}
final属性赋值:
- 在声明时同时赋值,往往与static一起使用
- 声明时不赋值,必须在构造方法中逐一赋值
- 总的原则:保证创建每一个对象的时候,final属性的值是确定的