final方法

                        final方法

凡是使用final修饰的方法就是final方法,也叫最终方法

public class Car {
public final void finalFn() {// todo something}
}
为了确保某个函数的行为在继承过程中保持不变,并且不能被覆盖(overridden),可以使用final方法。
为了效率上的考虑,将方法声明为final,让编译器对此方法的调用进行优化。要注意的是:编译器会自行对final方法进行判断,并决定是否进行优化。通常在方法的体积很小,而我们确实不希望它被覆盖时,才将它声明为final。
class中所有的private和static方法自然就是final。
public class Bus extends Car {
public void finalFn() {// todo something}
}
会报告编译时异常。Car.java: Bus 中的 fn() 无法覆盖 Car 中的 fn();被覆盖的方法为 final

posted @ 2010-12-21 12:25  meng72ndsc  阅读(233)  评论(0编辑  收藏  举报