final 关键字
使用final关键字做标识有“最终的”含义
final可以修饰类、方法、属性和变量
final 修饰类,则该类不允许被继承
final 修饰方法,则该方法不允许被重写(覆盖)
final修饰属性 , 则该类的属性不会进行隐士的初始化(类的初始化必须有值)或者在构造方法中复制(但是只能选择其一),类的final 成员变量在初始化的时候在声明的时候必须显示的初始化,赋初始值或者在构造函数中赋值,但是只能赋一次。
final 修饰变量,则该变量的值只能赋值一次及为常量。(在方法中可以定义final 变量,但是该变量只能初始化一次,不能多次赋值)
例如 final 修饰属性初始化方式1
public class Anmial { private final String name ; public Anmial(){ name ="zhangsan"; } }
final修饰属性初始化方式2:
public class Anmial { private final String name = "zhangsan" ; }
final 修饰变量初始化方式
public class Anmial { private final String name = "zhangsan" ; public void test(){ final int a = 1 ; // a = 3 ; //final修饰的变量只能初始化一次。 } }