009 メンバへのアクセス制御 (private修飾子)002 解答例

public class BankAccount {
    private double balance;

    // コンストラクタやメソッドなどがここに続く...

    // balanceフィールドへのアクセスを制御し、外部から直接アクセスできないようにしてください。
    public double getBalance() {
        return balance;
    }

    // 同時に、balanceが負の値にならないように制御を追加してください。
    public void setBalance(double newBalance) {
        if (newBalance >= 0) {
            balance = newBalance;
        } else {
            System.out.println("残高は負になりません。");
        }
    }

    // 他のメソッドや機能がここに続く...
}

この例では、balance フィールドへのアクセスを制御するために、getBalance メソッドと setBalance メソッドを使用しています。getBalance メソッドを通じて外部から balance フィールドの値を取得し、setBalance メソッドを通じて外部から balance フィールドの値を設定できます。setBalance メソッド内で、外部から与えられた新しい残高の値が負の値でないかを確認し、負の値であればエラーメッセージを表示します。これにより、BankAccount クラスは balance フィールドへのアクセスを制御し、同時に負の残高が設定されないように確実にします。

「009 メンバへのアクセス制御」問題集リスト