使用 final 关键字防止 Java 中的重写


使用 final 关键字可以防止方法被重写。换句话说,final 方法不能被重写。

下面是一个展示该过程的程序

示例

class A {
   int a = 8;
   final void print() {
      System.out.println("Value of a: " + a);
   }
}
class B extends A {
   int b = 3;
   void print() {
      System.out.println("Value of b: " + b);
   }
}
public class Demo {
   public static void main(String args[]) {
      B obj = new B();
      obj.print();
   }
}

上面这个程序会报错,因为 A 类中的 print() 方法是 final 的,因此 B 类中的 print() 方法不能重写它。错误信息如下

Demo.java:15: error: print() in B cannot override print() in A

更新于: 30-Jul-2019

2K+ 浏览

开启你的 职业生涯

完成课程进行认证

开始吧
广告