0

我在 First.java 中有一个数组,假设 Second.java 收集数据并放入 First.java 中的数组中。den 我需要从数组中读取 Third.java 以查看已输入的 wad Second.java。

如果我使用“First test = new First();” 我会再次得到一个空白数组......那么我如何从 Third.java 中读取以查看 Second.java 在 First.java 的数组中放入了什么?

提前致谢

4

2 回答 2

1

使用单例设计模式,请参阅java 示例,了解包含 Array 的类

于 2012-05-23T07:29:00.387 回答
0

要么制作数组static(根据@Jigar 的建议——尽管由于单元测试和并发问题不建议这样做),或者最好传递Firstto的正确实例Third。例如

class First {
  public Object[] array = ...;
}

class Second {
  public fillArrayAndPassItToThird(Third third) {
    First first = new First();
    // fill in the array...
    // then pass it to Third
    third.processArrayFromFirst(first);
  }
}

class Third {
  public void processArrayFromFirst(First first) {
    // process First.array
  }
}

或者,您可能更喜欢仅传递数组本身而不是完整First对象,以减少依赖关系:

    third.processArrayFromFirst(first.array);

    ...

  public void processArray(Object[] array) {
于 2012-05-23T07:28:17.150 回答