Herencia en Java ¡AVANZADOI!
Publicado por HombredeJava (3 intervenciones) el 26/09/2006 18:48:50
Hola, buenas. Escribo porque tengo un problema con la herencia en Java:
Tengo una función que está declarada así:
public void MiFuncion(ArrayList <MiTipo>){...}
donde "MiTipo" es una clase abstracta. Mi idea es pasarle a "MiFuncion" ArrayLists de clases hijas de "MiTipo", por ejemplo.
public class Hijo extends MiTipo{.....}
public class prueba{
...
ArrayList <Hijo> AL = new ArrayList <Hijo>();
MiFuncion(AL);
...
}
Y entonces, me da error de compilación!!!---->
MiFuncion(java.util.ArrayList <MiTipo>) in prueba cannot be applied to (java.util.ArrayList <Hijo>)
¿Qué tengo que hacer? Me funciono si no especifico el tipo del ArrayList, pero pregunto por una solución más elegante.
Muchas gracias.
HombredeJava
Tengo una función que está declarada así:
public void MiFuncion(ArrayList <MiTipo>){...}
donde "MiTipo" es una clase abstracta. Mi idea es pasarle a "MiFuncion" ArrayLists de clases hijas de "MiTipo", por ejemplo.
public class Hijo extends MiTipo{.....}
public class prueba{
...
ArrayList <Hijo> AL = new ArrayList <Hijo>();
MiFuncion(AL);
...
}
Y entonces, me da error de compilación!!!---->
MiFuncion(java.util.ArrayList <MiTipo>) in prueba cannot be applied to (java.util.ArrayList <Hijo>)
¿Qué tengo que hacer? Me funciono si no especifico el tipo del ArrayList, pero pregunto por una solución más elegante.
Muchas gracias.
HombredeJava
Valora esta pregunta


0