如果子类具有与父类中声明的方法相同的方法,则Java中会发生方法重写。子类中的方法与父类中的方法具有相同的名称和参数。方法覆盖在运行时多态中很有用。
演示此过程的程序如下:
class A { int a; A(int x) { a = x; } void print() { System.out.println("Value of a: " + a); } } class B extends A { int b; B(int x, int y) { super(x); b = y; } void print() { System.out.println("Value of b: " + b); } } public class Demo { public static void main(String args[]) { B obj = new B(4, 9); obj.print(); } }
输出结果
Value of b: 9