使用泛型方法可以扩展一种以上的类型,例如:
<T extends MyClass & MyInterface> void foo(T bar)
有没有办法用一个扩展多个类型的参数来指定一个列表?
List<MyClass & MyInterface> myList;
不工作...
这将允许以下操作:
class A extends MyClass implements MyInterface{}
class B extends MyClass implements MyInterface{}
myList.add(new A());
myList.add(new B());
MyClass c = myList.get(index);
MyInterface i = myList.get(index);
foo(myList.get(index));