- final的变量的值不能够被改变
- final的成员变量
- final的局部变量
class T{ final int i=8; //不可以再被改变(成员变量) public void m(final int j) { j=9; //这个会报错,只能用j的值,不可以修改j的值(局部变量) } }
- final的方法不能被重写
- final的类不能够被继承
class T{
public final void m() {
}
}
class TT extends T{
public void m() { //会报无法覆盖的错,不可以重写,因为该方法在父类被final修饰
}
}
final class T{
public final void m() {
}
}
class TT extends T{ //会报错,不能被继承,因为被final修饰
}
(PS:final相当于C++的const)