以下の「Tosee」クラスでは、s.hiddenInt を呼び出すと hiddenInt が表示されます。ただし、別のクラス「CantSee」で「ToSee」オブジェクトを作成すると、プライベート変数が表示されません。これはなぜですか?プライベートとは、クラスのどのインスタンスでも、クライアントがその特定のインスタンス変数またはメソッドを見ることができないことを意味するという印象を受けましたか? では、なぜ「ToSee」のメイン メソッドで hiddenInt を確認できるのでしょうか。
public class ToSee {
private int hiddenInt = 5;
public static void main(String[] args) {
ToSee s = new ToSee();
System.out.println(s.hiddenInt);
}
}
public class CantSee {
public static void main(String[] args) {
ToSee s = new ToSee();
System.out.println(s.hiddenInt);
}
}