Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/02/2011, 13:32
rebeca22
 
Fecha de Ingreso: diciembre-2002
Mensajes: 50
Antigüedad: 22 años, 4 meses
Puntos: 0
Exclamación Ayuda con Herencia

Supongamos que tenemos una clase Empleado (con atributos nombre, apellidos, etc) y varias clases que heredan de Empleado (Administrativo, Gerente, etc).

En la clase Empleado existe un método que dado un código devuelve el objeto Empleado que lo tiene:
public Empleado GetEmpleado(int code)

La clase Administrativo se relaciona con la clase Expediente (un expediente está asignado a un administrativo), luego tendrá el siguiente aspecto:

public class Expediente
{
//Atributos
...
Administrativo admtvo
...
}


Mi problema surge en el constructor de Expediente

Empleado empleado = empleado.GetEmpleado(5);
Expediente exp = new Expediente(..., (Administrativo)empleado, ...)

Me da error de ejecución (no de compilación) a pesar del casting.

El problema está en que GetEmpleado devuelve un objeto Empleado y el constructor de Expediente necesita un Administrativo (no un Empleado, aunque Administrativo herede de Empleado).

¿Cómo puedo solucionarlo esto?

Espero vuestra respuestas.

Última edición por rebeca22; 16/02/2011 a las 17:00