今天早些时候我遇到了这样的代码:
public class MyThing {
ArrayList<String> myStrings = new ArrayList<String>();
MyPrivateClass mpc = new MyPrivateClass();
public void DoWork() {
mpc.DoStuff();
}
class MyPrivateClass {
void DoStuff() {
myStrings.add("Test");
}
}
}
这是如何或为何起作用的? MyPrivateClass
如何在不引用创建它的类的情况下访问 myStrings
的实例?
最佳答案
这称为“内部类”,因为它是一个非静态
嵌套类。内部类可以(有限)访问其包含的实例,see this Oracle example了解详情。有关嵌套类的一般类别的更多信息 here .
关于java - 对私有(private)类的变量访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19089620/