問題
以下のクラス Person
があります。このクラスは、人物の基本情報を管理するものとします。
public class Person {
private String name;
private int age;
// コンストラクタやメソッドなどがここに続く...
// 問題1: nameフィールドへのアクセスを設定してください。
// 問題2: ageフィールドへのアクセスを設定してください。
}
name
フィールドへのアクセスを制御するためのメソッドや手段を追加してください。外部から直接アクセスできないようにし、安全に値を設定および取得できるようにします。age
フィールドへのアクセスを制御するためのメソッドや手段を追加してください。外部からの不正な変更やアクセスを防ぎ、適切な範囲の値しか受け入れないようにします。
ヒント
name
フィールドへのアクセスを制御するために、外部からの直接アクセスを禁止します。- フィールドへの読み取りアクセスには、
public
なゲッターメソッドを使用します。 - フィールドへの書き込みアクセスには、
public
なセッターメソッドを使用します。 - セッターメソッド内で、外部から与えられた値を適切に検証して、不正な値が設定されないようにします。
- ゲッターメソッドは、
private
なフィールドの実際の値を返すだけで、変更は行いません。
これにより、name
フィールドへのアクセスが安全であり、外部からの直接変更ができないようになります。
→解答例