ITEEDU

Java Gossip: final 关键词

"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; // 也可以是一个表达式,或是方法的传回值
	}
	....
}