polimorfismo (clases abstractas)
Post on 29-Jun-2015
1.040 Views
Preview:
DESCRIPTION
TRANSCRIPT
Ingenio DS Programando Soluciones
http://ingeniods.wordpress.com
Parte 2: Interfaces y Clases Abstractas
Polimorfismo: “Propiedad de
las especies de seres vivos
cuyos individuos pueden
presentar diferentes formas o
aspectos”
- RAE 2013
Ingenio DS Programando Soluciones
http://ingeniods.wordpress.com
Utilizamos como base el ejemplo desarrollado anteriormente donde exponemos la utilización de interfaces para realizar Polimorfismo, y partiendo de ese ejemplo exponer otra forma de realizar polimorfismo
1) Mostrable, donde se declara un método
que muestra la información de un objeto
2) Acelerable, permite acelerar un objeto
por una cantidad x de segundos
Parte 2: Interfaces y Clases Abstractas
3) Definimos una tercera interfaz
MostrableAcelerable, que extiende de dos
interfaces (la herencia múltiple si es permitida
entre interfaces) así las implementaciones de
esta tercera interfaz serán Acelerable y
Mostrable
Ingenio DS Programando Soluciones
http://ingeniods.wordpress.com
Definimos una Clase abstracta llamada Vehiculo que implementa la interfaz MostrableAcelerable
Y aquí describimos el comportamiento que debe tener el programa al invocar los métodos definidos en las interfaces. O sea que cualquier sub-clase de Vehiculo por herencia debe tener una implementación de Mostrable y Acelerable
Parte 2: Interfaces y Clases Abstractas
Ingenio DS Programando Soluciones
http://ingeniods.wordpress.com
Utilizando el principio de herencia
Definimos tres Clases que son hijas de Vehiculo, por herencia ellas también tienen la implementación de las interfaces
Si bien es cierto, sobre cada una de ellas podemos invocar el método: mostrar o acelerar descrito en la interfaz.
Cada una de ella sobrescribe la implementación de dichos métodos, entonces a pesar de ser Acelerable y Mostrable cada una de ellas tiene una forma propia de hacerlo.
Parte 2: Interfaces y Clases Abstractas
Ingenio DS Programando Soluciones
http://ingeniods.wordpress.com
Creamos una especificación de cada una de las clases de
Vehiculo, y por herencia estas reciben las funcionalidades y
atributos descritos en cada uno de sus padres
E igualmente por herencia siguen siendo clases Acelerable y
Mostrable
Parte 2: Interfaces y Clases Abstractas
top related