Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/11/2008, 13:18
M_Corleone
 
Fecha de Ingreso: enero-2008
Mensajes: 17
Antigüedad: 17 años
Puntos: 0
Respuesta: Ayuda con Arrays

Bueno, te dejo unas indicaciones. Lo que tienes que hacer es crear un array del supertipo de la herencia, es decir Persona, y en el añades la persona y el empleado creándolos y agregándolos al array.

Código:
Persona[] array = new Persona[2];

Persona p = new Persona ();
Empleado e = new Empleado ();

array[0] = p;
array[1] = (Persona)e; // aquí estariamos perdiendo la funcionalidad de la clase Empleado.
A la hora de recuperarlo tendrás que hacer un casting para poder volver a acceder a los métodos de empleado:

Código:
Empleado e2 = (Empleado)array[1];
e2.mostrarDatos ();
Espero que te ayude un poco la idea.

Para hacerlo más correcto, yo usaría el operador instanceof, y de paso te pongo lo que creo que pides:

Código:
for (int x = 0; x < array.length(); x++){ 
    if (array[x] instanceof Empleado){
        Empleado e = (Empleado)array[x];
        e.mostrarDatos ();
    } else {
        if (array[x] instanceof Persona) {
            Persona p = array[x];
            p.mostrarDatos ();
        }
    }
}
Espero que la sintaxis sea correcta, ya que lo he heho a pelo, sin probar el código.

Un saludo.