I have a method with a parameter containing generics.
public static void readList(List<ModelObject> list)
{
// more code
}
I want to pass an ArrayList of ModelObjectImplementations to this method.
ArrayList<ModelObjectImplementation> myList;
myList = ...
readList(myList); // gives compilation error
ModelObject is an interface that ModelObjectImplementation implements. How can I change the method declaration to allow this?
You can use wildcards, if you’re using Java version 1.5 and higher.
This solution is more generic, because it fits for all
java.util.Listinterface implementations and subclasses/subinterfaces ofModelObject.For more details go to wildcards tutorial