015-002-007

アップキャストで動物を扱う

初級

問題説明

アップキャストで動物を扱う

この問題では: Animal親クラスにspeak()メソッドを定義し、Dogサブクラスでオーバーライドした上で、DogインスタンスをAnimal型変数に代入(アップキャスト)してメソッドを呼び出し、結果を標準出力に表示するプログラムを作成します。

学習目標: アップキャストによるポリモーフィズムの基本を理解する

概要

Animalクラスにspeak()メソッドを定義し、Dogクラスでオーバーライドします。MainクラスでDogインスタンスをAnimal型変数に代入し、speak()を呼び出すと、実行時の型であるDogのメソッドが実行されることを確認してください。

仕様

  • Animalクラスを作成(Animal.java): speak()メソッドで"Animal speaks"を出力
  • Dogクラスを作成(Dog.java): Animalを継承し、speak()を"Dog barks"にオーバーライド
  • MainクラスでAnimal animal = new Dog();としてアップキャスト
  • animal.speak()を呼び出す

入力

なし

出力形式

Dog barks

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

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

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

新規登録