011 コンストラクタ(別のコンストラクタを呼び出す) 009 解答例

public class Circle {
    private double radius;

    // デフォルトコンストラクタ
    public Circle() {
        // 別のコンストラクタを呼び出す
        this(1.0);
    }

    // 引数つきコンストラクタ
    public Circle(double radius) {
        // コンストラクタ本体の実装
        this.radius = radius;
    }

    // 他のコンストラクタを呼び出すメソッド
    public void setRadius(double radius) {
        // 別のコンストラクタを呼び出す
        this.radius = radius;
    }

    // ゲッターメソッド(省略)

    // 円の面積を計算するメソッド
    public double calculateArea() {
        // 円の面積の計算式: π * r^2
        return Math.PI * radius * radius;
    }
}

この解答例では、デフォルトコンストラクタが引数つきコンストラクタを呼び出しています。また、別のコンストラクタを呼び出すためのメソッド setRadius も追加されています。これにより、同じ初期化処理を再利用できるようになります。

「011 コンストラクタ」問題集リスト