015-004-008

ArrayListでのポリモーフィズム

中級

問題説明

ArrayListでのポリモーフィズム

この問題では: Animalクラス継承したDogCatBirdサブクラスを作成し、各クラスでspeak()メソッドオーバーライドしてArrayList<Animal>に格納し、ループで各動物の鳴き声を標準出力に表示するプログラムを作成します。

学習目標: ArrayListで親クラス型を使用して異なる子クラスのオブジェクトを格納する方法を理解する

概要

標準入力から動物の種類を読み込み、親クラス型のArrayListに異なる子クラスのインスタンスを格納し、ポリモーフィズムを活用するプログラムを作成してください。

仕様

  • Animalクラスとそのサブクラス(Dog, Cat, Bird)を定義
  • 各クラスでspeak()メソッドをオーバーライド
  • Scannerで入力を読み込み、ArrayListに各種動物を追加してループで鳴き声を出力

入力形式

N
type1
type2
...
typeN
  • 1行目: 動物の数 N(1 ≤ N ≤ 10)
  • 続くN行: 動物の種類(DogCatBirdのいずれか)

出力形式

各動物の鳴き声をN行出力する。

  • DogWoof!
  • CatMeow!
  • BirdChirp!

コードを実行してみませんか?

この問題のコードエディタと実行機能を使用するには、ログインしてください。

アカウントをお持ちでない方

新規登録