015-004-008
ArrayListでのポリモーフィズム
中級
問題説明
ArrayListでのポリモーフィズム
この問題では: Animalクラスを継承したDog、Cat、Birdサブクラスを作成し、各クラスでspeak()メソッドをオーバーライドしてArrayList<Animal>に格納し、ループで各動物の鳴き声を標準出力に表示するプログラムを作成します。
学習目標: ArrayListで親クラス型を使用して異なる子クラスのオブジェクトを格納する方法を理解する
概要
標準入力から動物の種類を読み込み、親クラス型のArrayListに異なる子クラスのインスタンスを格納し、ポリモーフィズムを活用するプログラムを作成してください。
仕様
- Animalクラスとそのサブクラス(Dog, Cat, Bird)を定義
- 各クラスでspeak()メソッドをオーバーライド
- Scannerで入力を読み込み、ArrayListに各種動物を追加してループで鳴き声を出力
入力形式
N
type1
type2
...
typeN
- 1行目: 動物の数 N(1 ≤ N ≤ 10)
- 続くN行: 動物の種類(
Dog、Cat、Birdのいずれか)
出力形式
各動物の鳴き声をN行出力する。
Dog→Woof!Cat→Meow!Bird→Chirp!
