final 关键字可以用来修饰不具备抽象属性的类,类的成员域,接口的成员域以及类的不具备抽象属性的成员方法。而不可以用来修饰抽象类,接口,构造方法,抽象成员方法以及接口的成员方法。
- final 修饰的类不能被继承。
- final 修饰的方法不能被重写。
- final 修饰的变量是常量,不能被改变。
如果成员域具有最终属性和静态属性,则只能在成员域定义时赋值,且不能更改。
如果成员域具有最终属性但不具有静态属性,则只能在成员域定义时或者构造方法中赋值,且只能赋值一次。
//当前类由final修饰,不能被继承 public final class Final{ //成员变量x由final修饰,值不能被改变(只能接受一次赋值) final int x = 0; //方法y由final修饰,该方法不能被重写 final void y(){} }