在下面的简单代码中,肯定会产生错误,但是它会记录's'然后记录'10'。私有字段是否不仅在其类中可见,即使该类是静态的?
public class Test {
public static void main(String[] args) {
TestClass myObj = new TestClass();
myObj.test();
System.out.println(myObj.myField);
}
static class TestClass {
private int myField = 5;
private void test() {
System.out.println("s");
}
}
}
答案 0 :(得分:8)
这些字段都在Test
类中,因此Test
中的所有类和字段即使在私有时也可以看到对方。基本上私有关键字说“只有测试中的东西可以看到我”,在这种情况下,一切都在测试中。