java - useful - Pasando ArrayList<Subclass> al método declarado con List<Superclass>
java generics are useful to (1)
Puede utilizar comodines, si está utilizando la versión 1.5 y superior de Java.
public static void readList(List<? extends ModelObject> list)
Esta solución es más genérica, porque se adapta a todas las implementaciones de interfaz java.util.List
y subclases / subinterfaces de ModelObject
. Para más detalles ir al tutorial comodines.
Tengo un método con un parámetro que contiene genéricos.
public static void readList(List<ModelObject> list)
{
// more code
}
Quiero pasar una ArrayList
de ModelObjectImplementation
s a este método.
ArrayList<ModelObjectImplementation> myList;
myList = ...
readList(myList); // gives compilation error
ModelObject
es una interfaz que implementa ModelObjectImplementation
. ¿Cómo puedo cambiar la declaración del método para permitir esto?