在下面的“Tosee”类中,当我调用 s.hiddenInt 时,hiddenInt 是可见的。 但是,当我在另一个类“CantSee”中创建“ToSee”对象时,私有(private)变量不可见。为什么会这样?我的印象是私有(private)意味着在一个类的任何实例中,客户端都看不到那个特定的实例变量或方法?为什么我能在“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);
}
}
最佳答案
Java 中的私有(private)意味着变量或方法只能在声明它的类中访问。如果您对私有(private)的印象是真实的,那么它将无法在任何地方访问,这将使其完全无用。
关于java - Private 可见性修饰符的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18917265/