final关键字可以修饰属性、方法、类。
final修饰的类是一个终态类,不能被继承。
final修饰的方法是一个终态方法,不能被重写。
final修饰的属性不能被修改。
当final修饰一个原生数据类型时,表示该原生数据类型的值不能发生变化(比如说不能从10变为20);如果final修饰一个引用类型时,表示该引用类型不能再指向其他对象了,但该引用所指向的对象的内容是可以发生变化的。
对于final类型成员变量,一般来说有两种赋初值方式:
a) 在声明final类型的成员变量时就赋上初值
b) 在声明final类型的成员变量时不赋初值,但在类的所有构造方法中 都为其赋上初值。