問題
形状(Shape)という親クラスを作成します。このクラスには形状の色を表すインスタンス変数が含まれ、コンストラクタで初期化されます。さらに、形状の色を取得するメソッドも作成します。次に、円(Circle)クラスを作成し、Shape を継承します。Circle クラスには円の半径を表すインスタンス変数があり、コンストラクタで初期化されます。円の半径を取得するメソッドも作成します。各クラスでコンストラクタを実装し、暗黙的なスーパークラスのコンストラクタ呼び出しが行われていることを確認します。
ヒント
- 形状クラス (
Shape
):Shape
クラスには、形状の色を表すインスタンス変数が含まれます。- コンストラクタを実装して、色の初期化を行います。
- 形状の色を取得するためのメソッドを作成します。
- 円クラス (
Circle
):Circle
クラスはShape
クラスを継承します。Circle
クラスには円の半径を表すインスタンス変数が含まれます。- コンストラクタを実装して、円の半径の初期化を行います。
- 円の半径を取得するためのメソッドを作成します。
- 親クラスのコンストラクタが暗黙的に呼び出されることを確認します。
これにより、親クラスとサブクラスがそれぞれの役割を果たし、コンストラクタの呼び出しが正しく行われます。
→解答例