By.
: Maricel Yarari Mamani
UNIDAD 6
POLIMORFISMO
6.1. INTRODUCCIÓN
Polimorfismo proviene de dos raíces griegas: poli, múltiples y morfismo, formas.
Esta característica es la capacidad que objetos similares tienen para responder de
diferentes formas al mismo mensaje, y permite al programador implementar
múltiples formas de un mismo método, dependiendo cada una de ellas de la clase
sobre la que se realice la implementación. Esto permite acceder a varios métodos
distintos utilizando el mismo medio de acceso (el mismo nombre). El polimorfismo
está muy relacionado con la herencia.
POLIMORFISMO
(Flexibilidad)
Overload Override
(Sobre carga) (Sobre escritura)
Polimorfismo con respuesta de
acuerdo a los parámetros pudiendo Polimorfismo sobrescribiendo los
agregar o quitar parámetros. métodos heredados tal cual.
DIFERENCIA ENTRE SOBRECARGA Y POLIMORFISMO
Sobrecarga La Sobre carga hace referencia a un
conjunto de Métodos con el mismo
nombre, pero diferente Número de
Parámetros y/o Tipos de datos,
además que estos Métodos se
encuentran definidos en una misma
Clase.
La Sobre escritura hace referencia a
Sobre un conjunto de Métodos con el
Escritura mismo Nombre e igual Número de
Parámetros y Tipos, pero que se
encuentran definidos en diferentes
clases.
1
By.: Maricel Yarari Mamani
6.2. SOBRE CARGA DE MIEMBRO
Sobre carga de datos, sobrecargando los métodos.
Análisis
1. Sea la siguiente clase Operaciones
Operaciones
+int n1
+int n2
+int n3
+Operaciones(n1, n2)
+sumar(n1, n2)
+sumar(n1, n2, n3)
2. Sea el siguiente código de la clase Operaciones
Clase Operaciones
Sobre Carga de Métodos
Clase Principal
Salida por pantalla
2
By.: Maricel Yarari Mamani
6.3. SOBRE ESCRITURA DE MIEMBRO
Sobre escritura de datos, sobrescribiendo los métodos heredados tal cual.
Análisis
1. Sea la siguiente clase SerVivo
SerVivo
+String nombre
+comer()
Animal
Persona
+String especie
+comer() +comer()
Creación de Clases
3
By.: Maricel Yarari Mamani
Programa Ejecutado
Análisis
2. Sea la siguiente clase Operación
Operacion
+int n1
+int n2
Suma Resta
+int suma +int resta
+operaciones() +operaciones()
3. Sea el siguiente código de la clase Operaciones
Clase Padre Operación
Clase Hija Suma
Sobre Escritura de Métodos
4
By.: Maricel Yarari Mamani
Clase Hija Resta
Sobre Escritura de Métodos
Clase Principal
Salida por pantalla
5
By.: Maricel Yarari Mamani
Ejercicios
Ejemplo 1
Solución
6
By.: Maricel Yarari Mamani
7
By.: Maricel Yarari Mamani
Ejemplo 2
Ingeniero
+sueldo()
+datos()
+funciones()
Programador AdministradorBD
Analista
+sueldo() +sueldo()
+datos() +sueldo()
+datos() +datos()
+funciones() +funciones()
Solución
Clases
8
By.: Maricel Yarari Mamani
9
By.: Maricel Yarari Mamani
Ejecución del programa
10
By.: Maricel Yarari Mamani
11
By.: Maricel Yarari Mamani
12