将ArrayList 传递给使用List 声明的方法
我有一个方法,其中包含一个包含generics的参数。
public static void readList(List list) { // more code }
我想将ModelObjectImplementation
的ArrayList
传递给此方法。
ArrayList myList; myList = ... readList(myList); // gives compilation error
ModelObject
是ModelObjectImplementation
实现的接口。 如何更改方法声明以允许此操作?
如果您使用的是Java 1.5及更高版本,则可以使用通配符。
public static void readList(List extends ModelObject> list)
此解决方案更通用,因为它适用于ModelObject
所有java.util.List
接口实现和子类/子接口。 有关更多详细信息,请转到通配符教程