1.final是一个关键字,表示不可变的。fiinal可以用来修饰的结构有:类,方法,变量。
public final class A{}//final修饰的类。
public final void a1(){}//final修饰的方法。
final int a=0;//final修饰的变量。
2.final修饰的类不能被继承 。
当子类继承父类的时候,子类就可以访问到父类的内部数据,并可以通过重写父类的方法改变父类方法的实现,会使得程序变得不安全。为了保护某个类不被继承,可以使用final修饰这个类。被final修饰的类也叫作最终类。
当我们将A声明为最终类之后,A就不能被B继承了。此时编译会报错。
3.final修饰的方法不能被覆盖。
final修饰的方法不能被重写,当我们不想让子类重写父类的某个方法时,可以使用final修饰这个方法 。
当我们重写父类中的final修饰的方法时,编译会报错。
4..final修饰的变量一旦被赋值之后,就不能被更改。
final修饰的变量即成为常量,只能赋值一次,一旦被赋值之后,就不能被更改。