015-003-008

instanceofとダウンキャストの基本

初級

問題説明

instanceofとダウンキャストの基本

この問題では: 標準入力から犬と猫の名前を読み込み、Animal型配列に格納されたDogとCatオブジェクトをinstanceofで型判定し、ダウンキャストしてサブクラス固有のメソッドfetch()purr())を呼び出すプログラムを作成します。

学習目標: instanceofで型を判定し、ダウンキャストでサブクラス固有メソッドを呼ぶ方法を理解する

概要

Animal型の変数に格納されたオブジェクトの実際の型をinstanceofで判定し、ダウンキャストしてサブクラス固有のメソッドを呼び出すプログラムを作成してください。

仕様

  1. Animal クラスString name フィールドとコンストラクタを定義
  2. Dog がAnimalを継承し、fetch() メソッドで <name> fetches the ball! を出力
  3. Cat がAnimalを継承し、purr() メソッドで <name> purrs... を出力
  4. mainで標準入力から犬の名前を1行目、猫の名前を2行目で読み込む
  5. Animal型配列に Dog(dogName)Cat(catName) を格納
  6. ループで各要素の型をinstanceofで判定し、適切なメソッドを呼ぶ

入力形式

<犬の名前>
<猫の名前>

出力形式

<犬の名前> fetches the ball!
<猫の名前> purrs...

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

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

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

新規登録