014 継承(オーバーライドされたメソッドの利用) 021 問題

問題

Shapeクラスを作成し、calculateAreaメソッドを持たせます。このメソッドは「面積を計算します」と表示します。
Circleクラスを作成し、Shapeクラスを継承します。calculateAreaメソッドをオーバーライドして、円の面積を計算して表示します。
Rectangleクラスも作成し、同様にcalculateAreaメソッドをオーバーライドして、矩形の面積を計算して表示します。

ヒント

  1. Shapeクラスの作成:
    • Shape クラスを作成します。
    • このクラスには calculateArea メソッドがあり、メソッド内で「面積を計算します」と表示します。
  2. Circleクラスの作成:
    • Circle クラスを作成します。このクラスは Shape クラスを継承します。
    • Circle クラスには radius(半径)というプライベートな変数があります。
    • コンストラクタで半径を受け取り、calculateArea メソッドをオーバーライドします。
    • calculateArea メソッド内で円の面積を計算し、表示します。
  3. Rectangleクラスの作成:
    • Rectangle クラスを作成します。このクラスも Shape クラスを継承します。
    • Rectangle クラスには width(幅)と height(高さ)というプライベートな変数があります。
    • コンストラクタで幅と高さを受け取り、calculateArea メソッドをオーバーライドします。
    • calculateArea メソッド内で矩形の面積を計算し、表示します。

このステップに従って、Shapeクラス、Circleクラス、Rectangleクラスを実装してみてください。

解答例

「014 継承」問題集リスト