05/10/2011, 01:45
|
| | | Fecha de Ingreso: agosto-2008 Ubicación: En internet
Mensajes: 2.511
Antigüedad: 16 años, 3 meses Puntos: 188 | |
Respuesta: Enlace dinamico y estatico Mejor te pongo un ejemplo: Supongamos clase padre Animal y clase hija Gato.
Animal bicho = new Gato();
Referencia superclase (clase padre) - Objeto de la clase hija
Si quieres realizar un downcasting aprovechando la referencia animal anterior se puede hacer:
Gato bichito = (Gato) bicho;
Que sería el downcasting, pero un downcasting manual ya que java no permite el downcasting automático como sería el primer caso, y daría una ClassCastException al compilar.
Creo que el tema del downcasting es por el acceso a los métodos propios de las subclases.
Si el gato tiene un método maullar() y el animal uno genérico hablar(), que segun el tipo de animal llama al otro método. Si tu dices bicho.maullar(); no lo reconocería, y si dices bicho.hablar(); te lanzaría maullar();
Si haces downcasting se te permitiría llamar a bichito.maullar();
__________________ if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
} |