016 抽象クラス(ポリモーフィズムと抽象クラス) 011 問題

問題

抽象クラス Animal を定義し、makeSound という抽象メソッドを宣言します。
具象クラス Dog と Cat を作成し、Animal を拡張します。
Dog と Cat はそれぞれ makeSound メソッドをオーバーライドして、吠え声と鳴き声を表示します。
ポリモーフィズムを使用して、Animal 型の配列を作成し、異なる種類の動物のサウンドを出力します。

ヒント

  1. 抽象クラス Animal の定義:
    • Animal クラスを作成し、makeSound という抽象メソッドを宣言します。このメソッドは動物の音を出力します。
  2. 具象クラス DogCat の定義:
    • Dog クラスを作成し、Animal クラスを拡張します。makeSound メソッドをオーバーライドして、犬の吠え声を表示します。
    • 同様に、Cat クラスを作成し、Animal クラスを拡張します。makeSound メソッドをオーバーライドして、猫の鳴き声を表示します。
  3. ポリモーフィズムのデモ:
    • Animal 型の配列を作成し、その配列に Dog インスタンスと Cat インスタンスを格納します。
    • ループを使用して配列内の各要素にアクセスし、makeSound メソッドを呼び出して各動物の音を表示します。

これにより、抽象クラス、具象クラス、およびポリモーフィズムの概念を学ぶことができます。

解答例

「016 抽象クラス」問題集リスト