Polimorfismo

Páginas: 5 (1125 palabras) Publicado: 5 de abril de 2013
Programación Orientada a Objetos con C#

Programación Orientada
a Objetos en C#
Unidad 4.- Polimorfismo
Autor:
Dr. Ramón Roque Hernández
http://ramonroque.com/Materias/pooTec.htm
ramonroque@yahoo.com
Colaborador:
Ing. Bruno López Takeyas, M.C.
www.itnuevolaredo.edu.mx/takeyas
takeyas@itnuevolaredo.edu.mx

1

Pilares de la POO
1. Encapsulamiento
2. Herencia
3. Polimorfismo
2Dr. Ramón Roque Hernández
M.C. Bruno López Takeyas

1

Programación Orientada a Objetos con C#

Polimorfismo
• Es la habilidad que poseen los objetos para
reaccionar de modo diferente ante los mismos
mensajes.
• El polimorfismo se refiere a la posibilidad de definir
múltiples clases con funcionalidad diferente, pero con
métodos o propiedades denominados de forma
idéntica, quepueden utilizarse de manera
intercambiable mediante código cliente en tiempo de
ejecución.
• En C# el polimorfismo está íntimamente relacionado
con la sobrecarga y métodos virtuales.
3

Conceptos relacionados
con polimorfismo
• Sobrecarga (overload)
• Herencia
• Sobre-escritura (override)
4

Dr. Ramón Roque Hernández
M.C. Bruno López Takeyas

2

Programación Orientada a Objetos conC#

Sobrecarga [ Overload ]


La sobrecarga representa diferentes maneras de realizar una
misma acción.



En los programas se usa el mismo nombre en diferentes métodos
con diferentes firmas [número, orden y tipo de los parámetros].



El código de programación asociado a cada sobrecarga puede
variar.



Ejemplos:
– miEmpleado.Contratar(“Juan”, “Ventas”, 2500)
–miEmpleado.Contratar(“Juan”)
– miEmpleado.Contratar(“Juan”, 2500)
5

Ejemplo de Sobrecarga
[ Overload ]

miPuerta.Abrir ( Adentro, Afuera)

miPuerta.Abrir ( Afuera, Adentro)

miPuerta.Abrir ( )
6

Dr. Ramón Roque Hernández
M.C. Bruno López Takeyas

3

Programación Orientada a Objetos con C#

Herencia
Vehiculo
CaballosDeFuerza : int
Arrancar() : void
Detener() : void
HerenciaAutomovil

Superclase
(Clase base)
(Clase padre)
(Clase madre)

Subclases
(Clases derivadas)
(Clases Hijas)
PalaMecanica

CantidadDePuertas : int

PesoMaximoDeLevante : int

Acelerar(int cuanto) : void

MoverPala(string direccion) : void

7

Anulación / Sustitución /
Sobreescritura
[ Overriding ]
• Sucede cuando una clase “B” hereda
características de una clase “A”, perola
clase “B” re-define las características
heredadas de “A”.
• Propiedades
y
métodos
pueden
heredarse de una superclase. Si estas
propiedades y métodos son re-definidos
en la clase derivada, se dice que han
sido “Sobreescritos”.
8

Dr. Ramón Roque Hernández
M.C. Bruno López Takeyas

4

Programación Orientada a Objetos con C#

Anulación / Sustitución /
Sobreescritura
[Overriding ]
Articulo_Academico
Propiedades:



Metodos:
Abrir ( )

...

miLibro y miLaptop heredan el método
Abrir ( ) pero NO lo utilizan; sino que
cada uno lo implementa nuevamente de
manera distinta.

Herencia
Un libro y una Laptop se abren
de diferente manera.
miLibro.Abrir( )

miLaptop.Abrir( )
9

10

Dr. Ramón Roque Hernández
M.C. Bruno López Takeyas

5 Programación Orientada a Objetos con C#

11

Ejemplo de polimorfirmo
paramétrico
• Una clase define
varios métodos con el
mismo nombre pero
diferente firma
(sobrecarga)
• Se elige el método de
acuerdo a la firma
aplicada
• La sobrecarga del
constructor es un
ejemplo de ello
12

Dr. Ramón Roque Hernández
M.C. Bruno López Takeyas

6

Programación Orientada a Objetos con C#

Otroejemplo de
polimorfismo paramétrico
La misma clase tiene
varios métodos con
el mismo nombre
pero diferentes
firmas con diferentes
tipos de datos
13

Ejemplo de polimorfismo
de sobrecarga (overload)
• Diferentes clases
tienen un método con
el mismo nombre,
pero comportamiento
diferente
• Se aplica el método
de acuerdo al objeto
en que se trabaje

14

Dr. Ramón Roque...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Polimorfismo
  • Polimorfismo
  • Polimorfismo
  • Polimorfismo
  • Polimorfismos
  • Polimorfismo
  • Polimorfismos
  • Polimorfismo

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS