final表示最后的,最终的,终端的。在java语言中用于以下四种情况。
1.final关键字修饰成员变量
在java中,如果想将一个变量定义成常量,该变量就用关键字final修饰。用final修饰的变量系统不会为其添加默认值,必须显式赋值或在构造方法里初始化变量。一旦给final变量赋初值后,其值就不能再改变。
2.final修饰局部变量
在java中,当final修饰局部变量时,可以读取使用该变量的值,但不可以改变该变量的值。
注意:内部类在类中的局部位置上时,只能访问该局部被final修饰的局部变量。
3.final关键字修饰方法
在java中,如果某个方法只想被子类继承,不想被子类重写,就将该方法用final修饰。用final修饰的方法称为最终方法。
注意:被static和private修饰的方法默认为final类型,所以被这两个关键字修饰的方法不能被重写。
4.final关键字修饰类
在java中设计类的时候,如果该类不需要有子类,类的实现细节不允许改变,并且确信这个类不会被扩展,那么久将该类设计为final类。用final修饰的类,不能被继承,称为最终类或终极类。该类中的成员方法默认都是final。