我可能会使用不正确的条款,对不起。 我需要从位于外部类的实例中的另一个类的实例访问属性。类Outer将有两个实例,我需要分别为每个实例存储和处理属性“desiredProperty”。 注意:所有课程都不同。 Inner1和Inner2不是同一个类! 这是一个简单的例子。
文件1:
public class Outer{
public Inner1 inner1 = new Inner1();
public Inner2 inner2 = new Inner2();
}
文件2:
public class Inner1 {
int desiredProperty=1;
}
文件3:
public class Inner2{
public int getDesiredProperty(){
//How can I here access the property DesiredProperty from Inner1?
}
}
答案 0 :(得分:2)
Inner2类需要为Inner1
设置实例属性public class Inner2{
private Inner1 inner1;
public Inner2(Inner1 inner1){
this.inner1 = inner1;
}
public int getDesiredProperty(){
return inner1.getDesiredProperty();
}
}
答案 1 :(得分:0)
首先在Inner1类中创建一个setter getter函数,这样你就可以得到/设置Inner1上的值
public class Inner1 {
int desiredProperty=1;
public int getDesiredProperty()
{
return this.desiredProperty;
}
public void setDesiredProperty(int val)
{
this.desiredProperty = val;
}
}
并在Inner2类中
public class Inner2{
public int getDesiredProperty(){
//How can I here access the property DesiredProperty from Inner1?
Inner1 inner1 = new Inner1();
return inner1.getDesiredProperty(); //value from Inner1
}
}