Variables
polimórficas
Es la capacidad
que tiene los objetos de comportarse de múltiples formas. Polimorfismo:
Upcasting Únicamente tienen sentido por la existencia de la herencia. ¨El
polimorfismo (o upcasting) consiste en la posibilidad de que una referencia a
objetos de una clase pueda conectarse también con objetos de descendientes de
ésta.
El sentido del
polimorfismo es realizar una generalización, olvidar los detalles concretos de
uno o varios objetos de distintas clases y buscar un punto común a todos ellos
en un ancestro Se trata de algo que realiza comúnmente la mente humana durante
el proceso de Razonamiento.
Las conexiones
polimórficas se realizan a veces de manera implícita en el paso de argumentos a
una operación. Puede contener referencias a objetos de diferentes clases.
El polimorfismo hace
posible que un usuario pueda añadir nuevas clases a una jerarquía sin modificar
o recompilar el código escrito en términos de la clase base.Permite programar a nivel
de clase base utilizando objetos de clases derivadas.
Se puede clasificar el
polimorfismo en dos grandes clases:
Polimorfismo dinámico(o
polimorfismo paramétrico): es aquél en el que el código no incluye ningún
tipo de especificación sobre el tipo de datos sobre el que se trabaja. Así,
puede ser utilizado a todo tipo de datos compatible.
Polimorfismo estático (o
polimorfismo ad hoc): es aquél en el que los tipos a los que se aplica el
polimorfismo deben ser explicitados y declarados uno por uno antes de poder ser
utilizados.
El polimorfismo dinámico
unido a la herencia es lo que en ocasiones se conoce como programación genérica.
También se clasifica en
herencia por redefinición de métodos abstractos y por método sobrecargado. El
segundo hace referencia al mismo método con diferentes parámetros.
En términos de
programación, el polimorfismo permite que un solo nombre de clase o de método
represente diferente código seleccionado mediante algún mecanismo automático.
De esta forma, puesto que
un nombre puede representar diferente código, también puede representar muchos
comportamientos distintos.
Un lenguaje que acepta el
polimorfismo es un lenguaje polimórfico.
Un lenguaje monomórfico no acepta el polimorfismo, está restringido a un comportamiento estático, porque cada nombre está ligado en forma estática a su código.
Un lenguaje monomórfico no acepta el polimorfismo, está restringido a un comportamiento estático, porque cada nombre está ligado en forma estática a su código.