Kodrill

Java SE Bronze (1Z0-818-JPN) 試験 / 継承とポリモフィズム ・ 無料問題 2/3

継承とポリモフィズム 問題2[メソッドのオーバーライド]

次のコードをコンパイルした結果として正しいものを選んでください。

Java
class Parent {    public void greet() {        System.out.println("Hi");    }}​class Child extends Parent {    void greet() {        System.out.println("Hello");    }}

選択肢

  • A.コンパイルは成功する
  • B.2行目でコンパイルエラーになる
  • C.8行目でコンパイルエラーになる正解
  • D.コンパイルは成功するが、Child の greet は呼び出せない

解説

オーバーライドするメソッドのアクセス修飾子は、元のメソッドと同じか、より広い範囲にしなければなりません。public のメソッドを修飾子なし (より狭い範囲) でオーバーライドしている8行目がコンパイルエラーです。

「継承とポリモフィズム」の無料問題

ここで公開しているのは無料範囲の問題です。無料登録すると、解答の記録・ダッシュボードでの復習ができ、 プレミアムならこの問題セットの全問題と本番形式の模擬試験も解けます。