"final"关键词可以使用在变量宣告时,表示该变量一旦设定之后,就不可以再改变该变量的值,例如在下面的程序代码中,PI这个变量一旦设定,就不可以再有指定值给 PI的动作:
final double PI = 3.14159;
如果在方法成员宣告时使用"final",表示该方法成员在无法被子类别重新定义(Override),例如:
public class Ball { private double radius; public final double getRadius() { return radius; } // .... }
如果您在宣告类别时加上"final"关键词,则表示要终止被扩充,这个类别不可以被其它类别继承,例如:
public final class Ball { // .... }
如果在数据成员上加上final关键词,但未给予该数据成员初值,则初值的初始化被延迟,该数据成员必须在建构方法中进行初始化,且初始化之后不得改变其值,例如:
public class SomeClass { private final int some; public SomeClass() { some = 10; // 也可以是一个表达式,或是方法的传回值 } .... }