重新定义来自超类(父类)继承的类中的实例方法称为方法覆盖。
示例
现在来看看,类A和类B的以下声明,覆盖了 print() 方法 :
|
1
2
3
4
5
6
7
8
9
10
11
|
public class A {
public void print() {
System.out.println("A");
}
}public class B extends A {
public void print() {
System.out.println("B");
}
} |
类B是类A的子类。类B从其超类继承print()方法并重新定义它。类B中的print()方法覆盖类A的print()方法。
如果一个类覆盖了一个方法,它会影响覆盖的类及其子类。 考虑下面的类C的声明: