lunes, 15 de julio de 2013

                                  Polimorfismo

Una misma llamada ejecuta distintas sentencias dependiendo de la clase a la que pertenezca el objeto al que se aplica el método.

•Supongamos que declaramos: Persona p;

•Podría suceder que durante la ejecución del programa, p hace referencia  a un profesor o a un alumno en distintos momentos, y

•Entonces:

 –Si p referencia a un alumno, con p.toString(), se ejecuta el toString de la clase Alumno.

 – Si p referencia a un profesor, con p.toString(), se ejecuta el toString de la clase Profesor.

Enlace dinámico: Se decide en tiempo de ejecución qué método se ejecuta.

----------------------------------------------------------

POLIMORFISMO: CARACTERÍSTICAS

Ø  Moldes de objetos (castings):

Ø  Realizan conversiones de tipo, no modifican al objeto, Solo su tipo.

Ø  Upcasting: Interpretar un objeto de una clase derivada como del mismo tipo que la clase base.


Ø  No hace falta especificarlo

Ø  Downcasting: Interpretar un objeto de una clase base como del mismo tipo que una clase derivada suya.


Ø  Se especifica precediendo al objeto a convertir con el nuevo tipo entre paréntesis. 
   -------------------------------------------------------

No hay comentarios:

Publicar un comentario