015 ポリモーフィズム(アップキャスト) 007 問題

問題

以下の基本クラスがあります。

class Instrument {
    void play() {
        System.out.println("Playing an instrument");
    }
}

class Piano extends Instrument {
    void play() {
        System.out.println("Playing the piano");
    }
}

メインクラスで、Instrument クラスと Piano クラスのオブジェクトを作成し、それぞれの play メソッドを呼び出してください。その後、アップキャストを使用して Instrument クラスの参照変数を使って Piano クラスのオブジェクトの play メソッドを呼び出してください。

ヒント

  1. Instrument クラスと Piano クラスがあります。
  2. メインクラスで、Instrument クラスと Piano クラスのオブジェクトを作成します。
  3. それぞれのオブジェクトで play メソッドを呼び出します。
  4. アップキャストを使用して、Instrument クラスの参照変数を使って Piano クラスのオブジェクトの play メソッドを呼び出します。

これにより、アップキャストによって子クラスのオブジェクトを親クラスの参照変数で操作できることを確認できます。

解答例

「015 ポリモーフィズム」問題集リスト