我的代码格式如下:
public class Outer {
protected int data;
protected Inner inner;
protected void run() {
inner = new Inner();
}
}
public class Inner extends Outer {
protected getOuterData() {
...
}
}
Inner
对象只能在 Outer
类的方法中创建。在 Inner
对象中,是否有一种方法可以访问创建了 Inner
对象的类 Outer
实例的数据?
编辑:我意识到您可以通过构造函数将外部对象传递到内部对象,但我想知道是否还有其他方法?
EDIT2:实际上通过构造函数传递对象对于我正在做的事情来说是没问题的。
最佳答案
public class Outer {
protected int data;
protected Inner inner;
protected void run() {
inner = new Inner(this);
}
}
public class Inner extends Outer {
private Outer parent;
Inner(Outer parent) {
this.parent = parent
}
protected getOuterData() {
return parent;
}
}
关于java - 在对象B中,如何访问创建了对象B的对象A?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31407527/