Java - 外类内部类的数组

Wex*_*Wex 0 java polymorphism inner-classes outer-classes

比方说我有:

public class A {
  public A() {
    ...
  }
  ...

  public class B {
    public B() {
      ...
    }
    public void doSomething() {
      ...
    }
    ...
  }

  public class C {
    public C() {
      ...
    }
    public void doSomething() {
      ...
    }
    ...
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我想创建一个可以同时包含B和C的ArrayList,我可以myArray.get(i).doSomething()在A中调用,我想要声明我的ArrayList是什么类型的?

mic*_*667 5

List<myInterface>.你还需要一个接口BC:

interface myinterface {
    void doSomething();
}
Run Code Online (Sandbox Code Playgroud)

而且两者BC必须的implement myInterface.