SlideShare una empresa de Scribd logo
1 de 8
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
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.
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.
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.
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
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
GRACIAS


POR


SU

ATENCION

Más contenido relacionado

La actualidad más candente

La actualidad más candente (9)

Esteganografía
EsteganografíaEsteganografía
Esteganografía
 
Cifrado por Sustitución y por Transposición
Cifrado por Sustitución y por TransposiciónCifrado por Sustitución y por Transposición
Cifrado por Sustitución y por Transposición
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Esteganografia
EsteganografiaEsteganografia
Esteganografia
 
METODOS DE ENCRIPTACIÓN
METODOS DE ENCRIPTACIÓNMETODOS DE ENCRIPTACIÓN
METODOS DE ENCRIPTACIÓN
 
Sistemas de cifrado
Sistemas de cifradoSistemas de cifrado
Sistemas de cifrado
 
Esteganografía y criptografía
Esteganografía y criptografíaEsteganografía y criptografía
Esteganografía y criptografía
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Presentacion progra
Presentacion prograPresentacion progra
Presentacion progra
 

Destacado

Destacado (8)

Controversia herencia ambiente1
Controversia herencia ambiente1Controversia herencia ambiente1
Controversia herencia ambiente1
 
Presentación psicosocial piaget
Presentación psicosocial piagetPresentación psicosocial piaget
Presentación psicosocial piaget
 
Ejercicio 3 analisis_caso
Ejercicio 3 analisis_casoEjercicio 3 analisis_caso
Ejercicio 3 analisis_caso
 
La drogadiccion diapos__final
La drogadiccion diapos__finalLa drogadiccion diapos__final
La drogadiccion diapos__final
 
Clase infancia intermedia
Clase infancia intermediaClase infancia intermedia
Clase infancia intermedia
 
Adultez joven
Adultez jovenAdultez joven
Adultez joven
 
La infancia-concepciones-y-perspectivas-maria-victoria
La infancia-concepciones-y-perspectivas-maria-victoriaLa infancia-concepciones-y-perspectivas-maria-victoria
La infancia-concepciones-y-perspectivas-maria-victoria
 
DESARROLLO COGNOSCITIVO EN LA PRIMERA INFANCIA
DESARROLLO COGNOSCITIVO EN LA PRIMERA INFANCIADESARROLLO COGNOSCITIVO EN LA PRIMERA INFANCIA
DESARROLLO COGNOSCITIVO EN LA PRIMERA INFANCIA
 

Similar a Polimorfismo (20)

Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Polimorfismo en Java
Polimorfismo en JavaPolimorfismo en Java
Polimorfismo en Java
 
Programaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetosProgramaciom avanzada orientada a objetos
Programaciom avanzada orientada a objetos
 
polimorfismo
polimorfismopolimorfismo
polimorfismo
 
Programación Orientada a Objetos parte 2
Programación Orientada a Objetos  parte 2Programación Orientada a Objetos  parte 2
Programación Orientada a Objetos parte 2
 
Universidad regional autónoma de lo1
Universidad regional autónoma de lo1Universidad regional autónoma de lo1
Universidad regional autónoma de lo1
 
Definiciones taller 8 agost
Definiciones taller 8 agostDefiniciones taller 8 agost
Definiciones taller 8 agost
 
Polimorfismo 14k
Polimorfismo 14kPolimorfismo 14k
Polimorfismo 14k
 
Paradigma orientado a objetos
Paradigma orientado a objetosParadigma orientado a objetos
Paradigma orientado a objetos
 
3 . Representación del conocimiento y razonamiento
3 . Representación del conocimiento y razonamiento3 . Representación del conocimiento y razonamiento
3 . Representación del conocimiento y razonamiento
 
Herencia
HerenciaHerencia
Herencia
 
Programación de aplicaciones
Programación de aplicacionesProgramación de aplicaciones
Programación de aplicaciones
 
Reporte
ReporteReporte
Reporte
 
Reporte
ReporteReporte
Reporte
 
Abstracción en poo
Abstracción en pooAbstracción en poo
Abstracción en poo
 
Abstracción.docs
Abstracción.docsAbstracción.docs
Abstracción.docs
 
PROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOSPROGRAMACION ORIENTADA A OBJETOS
PROGRAMACION ORIENTADA A OBJETOS
 
Polimorfismo
PolimorfismoPolimorfismo
Polimorfismo
 
Guía polimorfismo
Guía polimorfismoGuía polimorfismo
Guía polimorfismo
 
Abstraccion
AbstraccionAbstraccion
Abstraccion
 

Polimorfismo

  • 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
  • 7.