オーバーライド(1)
スーパークラスで定義したメソッドをサブクラスで再定義することをメソッドのオーバーライドといいます。実行時はサブクラスで定義したメソッドのみが呼び出されます。
問題:何が出力されるか?
A. AX、BXの順で両方
B. AXのみ
C. BXのみ
D. BX、AXの順で両方
===ソースコード
public class M {
public static void main(String[] args) {
B b = new B();
b.x();
}
}
class A {
void x() {
System.out.println("AX");
}
}
class B extends A {
void x() {
System.out.println("BX");
}
}
解答:
C. BXのみ
問題:何が出力されるか?
A. AX、BXの順で両方
B. AXのみ
C. BXのみ
D. BX、AXの順で両方
===ソースコード
public class M {
public static void main(String[] args) {
B b = new B();
b.x();
}
}
class A {
void x() {
System.out.println("AX");
}
}
class B extends A {
void x() {
System.out.println("BX");
}
}
解答:
C. BXのみ