1. PO M R SM
LI O FI O
En programación or i ent ada a obj et os se denom na pol i m f i sm a l a capaci dad
i or o
que tienen los objetos de una clase de responder al mismo mensaje o evento en función
de los parámetros utilizados durante su invocación. Un objeto polimórfico es una
entidad que puede contener valores de diferentes tipos durante la ejecución del
pr ogr ama.
D cho de ot r a f or m el pol i m f i sm consi st e en consegui r que un obj et o de
i a, or o
una clase se comporte como un objeto de cualquiera de sus subclases, dependiendo de
la forma de llamar a los métodos de dicha clase o subclases. Una forma de conseguir
objetos polimórficos es m ant e el uso de punt er os a l a super cl ase.
edi
2. Clasificación
Se puede cl asi f i car el pol i m f i sm en dos gr andes cl ases:
or o
• 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 ut i l i zado a t odo t i po de dat os com i bl e.
pat
• Polimorfismo estático (o pol i m f i sm ad hoc) es aquél en el que l os
or o
t i pos a l os que se apl i ca el pol i m f i sm deben ser expl i ci t ados y
or o
decl ar ados uno por uno ant es de poder ser ut i l i zados.
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.
3. Pol i m f i sm usando cl ases
or o
Por ej em o, t enem una cl ase Em eado y ot r a cl ase Al um l as cual es
pl os pl no,
her edan
de una clase abstracta Persona que tiene el método Sal udar . En l as cl ases hi j as
sobrescribiremos el método Sal udar devol vi endo el nom e de l a per sona y si es
br
un
em eado o un al um
pl no.
4. HERENCIA
Es la relación entre una clase general y otra clase más específica. La herencia es uno de los
mecanismos de los lenguajes de programación orientada a objetos basados en clases, por
medio del cual una clase se deriva de otra de manera que extiende su funcionalidad. La
clase de la que se hereda se suele denominar clase base, clase padre, superclase, clase
ancestro (el vocabulario que se utiliza suele depender en gran medida del lenguaje de
programación).
La herencia suele ser un requisito fundamental para poder emplear el Polimorfismo, al igual
que un mecanismo que permita decidir en tiempo de ejecución qué método debe invocarse
en respuesta a la recepción de un mensaje, conocido como enlace tardío (late binding) o
enlace dinámico (dynamic binding).
Por ejemplo: Si declaramos una clase párrafo derivada de una clase texto, todos los
métodos y variables asociadas con la clase texto, son automáticamente heredados por la
subclase párrafo.
5. Las cl ases der i vadas (cl ase secundar i a o subcl ase) se vuelven
cada vez más especi al i zadas a m da que van
edi
ascendiendo el árbol. Por l o t ant o, se suel e hacer r ef er enci a a
la
relación que une a una cl ase secundar i a con una cl ase
pr i m i a m ant e l a f r ase "es una" x o y.
ar edi
6. Encapsul am ent o
i
El Encapsul am ent o o encapsulación es la propiedad que permite asegurar que
i
el contenido de la información de un objeto está oculta. La encapsulación
(también se conoce com ocultación de la información), en esenci a.
o
En la práctica, esto significa que cada clase debe tener dos partes: una interfaz
y una implementación. La i nt er f az de una clase captura sólo su vi st a
ext er na y l a implementación contiene la representación de la abstracción, así
com l os m
o ecani sm que r eal i zan el com t am ent o adecuado.
os por i
La encapsulación también l e per m t e cont r ol ar l a f or m en que se
i a
ut i l i zan l os dat os y l os pr ocedi m ent os. Puede ut i l i zar m f i cador es
i odi
de acceso, com Pr i vat e o Pr ot ect ed, para evitar que los procedimientos
o
externos ejecuten métodos de cl ase o l ean y m f i quen dat os en
odi
pr opi edades y cam pos. U ed debe decl ar ar l os det al l es i nt er nos de
st
una cl ase com Pr i vat e para evitar que sean utilizados fuera de su clase; a
o
esta técnica se l e l l am ocul t am ent o de dat os. En l a cl ase
a i
BankA ccount , la información del cl i ent e, com el sal do de l a cuent a, se
o
pr ot ege de est a f or ma