015-004-005
ポリモーフィズム:戻り値
上級
問題説明
ポリモーフィズム:戻り値
この問題では: createVehicle(boolean needsEngine)ファクトリメソッドを実装し、引数に応じてCarまたはBikeオブジェクト(Vehicle型として)を返し、getType()で乗り物の種類を標準出力に表示するプログラムを作成します。
学習目標: メソッドの戻り値として親クラス型を使用し、異なるサブクラスのオブジェクトを返す方法を理解する
概要
乗り物(Vehicle)クラスを継承した車(Car)と自転車(Bike)クラスがあります。条件に応じて異なる乗り物オブジェクトを返すファクトリメソッドを実装してください。
仕様
- Vehicleクラス:
getType()メソッド("Unknown"を返す) - Carクラス:
getType()で"Car"を返す - Bikeクラス:
getType()で"Bike"を返す createVehicle(boolean needsEngine)メソッド: 引数がtrueならCar、falseならBikeを返す(戻り値の型はVehicle)needsEngineがtrueとfalseの両方でcreateVehicle()を呼び出し、返されたオブジェクトのgetType()を出力
出力形式
Car
Bike
