final关键字
final:最终,不可变的
final方法
若继承将会报错:
final方法
final方法不能被重写(覆盖)
public final void a(){}
若重写将会报错:
常量
1.同时以final 及 static修饰的变量叫常量
2.常量与静态变量一样,唯一的区别就是常量不能二次修改值
3.常量拼写全部大写,单词以下划线区分
final变量
final变量只能赋值一次
static final A =1;
若二次赋值将报错:
final引用变量
class people{
//用final修饰的实例变量需要赋一个初始值
//否则报错
static final int AGE = 1;
int G;
void a(){
final people pe = new people();
pe = new people();
//报错
//pe开辟了一个内存空间,此时创建新的pe对象将替换内存空间
pe.height=10;
//但是内存空间的值可变
}
}
构造方法
为final赋默认值之前为final变量赋值则不会报错
pubilc people{
this.age = 10;
}