0

我有以下课程:

    public class MeasurementUnit(){ 
      ...
      private String name = "test";
      private List<MeasurementPoint> measPoints;
      ...
    } 

public class MeasurementPoint(){ 
  ...
  private String name = "subtest";
  ...
} 

我正在foreach为创建表做一些事情,或者有时我必须为某个方法提供某个MeasurementPointfrom measPoints......但是是否有可能MeasurementUnit从某个地方访问父级的名称(或任何其他信息) MeasurementPoint

我想我可以使用继承和extend MeasurementPoint使用,MeasurementUnit 但是我会存储两次信息,不是吗(MeasurementUnit在 的超类中和超类中MeasurementPoint)?

对于我的问题,是否有更好的解决方案或想法?

提前致谢!

4

3 回答 3

1

如果您在类中迭代,则对象measPoints在类内,那么您可以访问类的每个成员,例如。MeasurementUnitmeasPointsMeasurementUnitMeasurementUnit

public class MeasurementUnit(){ 
      ...
          private String name = "test";
          private List<MeasurementPoint> measPoints;

          for(MeasurementPoint measPoint:measPoints){

         someOtherMethod(measPoint.getXXX(), measPoint.getYYYY(),name);

       }
    } 
于 2013-07-08T04:58:02.767 回答
0

您可以在MeasurementUnit 中为measPoints 创建一个getter,然后在MeasurementPoint 的构造函数中添加对您的MeasurementUnit 对象的引用并将其存储到实例变量中,然后在每次需要引用measPoints 时引用该对象。

于 2013-07-08T04:50:33.783 回答
0

继承解决方案对我来说听起来有点奇怪。

我可能会做类似的事情:

public class MeasurementUnit(){ 
  ...
  private String name = "test";
  private List<MeasurementPoint> measPoints;
  ...
} 

public class MeasurementPoint(){ 
...
  private String name = "subtest";
  private MeasurementUnit parent;

  public MeasurementPoint(MeasurementUnit parent) {
    this.parent = parent;
  }
...
}
于 2013-07-08T04:51:32.107 回答