我想要一个ArrayList,您可以在其中添加实现Interface的Objects。 像这样:
ArrayList<Object implements Interface> list =
new ArrayList<Object which implements a specific Interface>();
这个的正确语法是什么?
答案 0 :(得分:0)
只需将界面设置为通用类型即可。在这里,您可以使用C#:
进行编码interface IFoo {
void foo();
}
class Foo1 : IFoo {
public void foo() {
Console.WriteLine("foo1");
}
}
class Foo2 : IFoo {
public void foo() {
Console.WriteLine("foo2");
}
}
class Program {
public static void Main() {
// IFoo type: any object implementing IFoo may go in
List<IFoo> list = new List<IFoo>();
list.Add(new Foo1());
list.Add(new Foo2());
foreach(IFoo obj in list) obj.foo(); // foo1, foo2
Console.ReadKey();
}
}