015-003-004
ダウンキャスト:型の変換
中級
問題説明
ダウンキャスト:型の変換
この問題では: 標準入力から犬の名前を読み込み、Animal型変数にDogオブジェクトを格納し、ダウンキャストによってDog型に変換してDog固有のメソッドを呼び出すプログラムを作成します。
学習目標: 親クラス型から子クラス型への変換(ダウンキャスト)を学ぶ
概要
ダウンキャストは親クラス型の変数を子クラス型に変換することです。ただし、実際のオブジェクトが子クラスの場合のみ成功します。
仕様
- 標準入力から犬の名前(文字列)を1行読み込む
- Dogクラスはコンストラクタで名前を受け取り、
nameフィールドに保持する - Animal型変数に Dog オブジェクトを格納
- Dog型にダウンキャスト
- Dog固有のメソッド
bark()を呼び出し
入力形式
[犬の名前]
出力形式
[名前] says: Woof!
入出力例
入力: Rex
出力: Rex says: Woof!
