Está en la página 1de 6

1.

Cada estudiante consulta y entrega definición de los siguientes conceptos:


-Herencia y Polimorfismo
-Herencia Simple
-Herencia Múltiple
-Herencia de Interfaz
-Herencia de Implementación
-Polimorfismo y reutilización -Sobrecarga
HERENCIA
Herencia en la programación orientada a objetos es la habilidad de extender una
funcionalidad existente definiendo una nueva clase que hereda funcionalidad de una clase
existente. Lo cual nos ahorrara mucho tiempo a los programadores.
Si contamos con una clase que se acerca a lo que necesitamos; no es necesario crear una
clase desde cero. Podemos aprovecharla y extenderla para crear nuestra nueva clase. Esta
nueva clase se llamara subclase y la clase que ya teníamos se llamara superclase.
La subclase heredara todos los atributos y los métodos que fueron definidos en la clase
padre. Si necesitamos cambiar algún método, se puede sobrescribir el comportamiento en
nuestra subclase; utilizando el mismo nombre y los mismos argumentos del método que se
encuentra en la subclase. O bien si se requiere crear un nuevo método lo podemos incluir en
nuestra subclase.
Una clase puede heredar atributos por dos superclases (clases padres). La herencia múltiple
puede ser usada para agrupar atributos y métodos de distintas clases en una sola.

Ejemplo:

POLIMORFISMO
Significa literalmente muchas formas. En programación orientada a objetos es una tecnica
para optimizar la funcionalidad basada en tipos particulares.
La diferencia entre herencia y polimorfismo es que herencia está relacionada con clases y
polimorfismo con métodos.
Existen 3 tipos de polimorfismo:
- Sobrecarga:
Es cuando existen funciones con el mismo nombre, con funcionalidad similar; en clases
que son completamente independientes una de la otra.
- Paramétrico:
Existen funciones con el mismo nombre pero se usan diferentes parámetros (nombre o
tipo). Se selecciona el método dependiendo del tipo de datos que se mande.
- Inclusión:
Es cuando se puede llamar a un método sin tener que conocer su tipo, así no se toma en
cuenta los detalles de las clases especializadas, utilizando una interfaz común.

HERENCIA SIMPLE

La herencia simple consiste en cuando una clase, hereda a una clase hijo, y a solo una le
hereda sus atributos, es igual al concepto general de herencia, con la limitante de solo
poder heredar de una clase padre a una clase hijo, y solo a una clase hijo

HERENCIA MÚLTIPLE:

Consiste en la utilización de las propiedades de una clase a varias clases más, lo que
significa que en esta propiedad una sola clase padre puede heredarle atributos, u objetos
de esta a varias clases hijo sin ninguna limitación entre ellas.
HERENCIA DE INTERFAZ
La interfaz es básicamente una clase abstracta pura, sus métodos son todos abstractos y no
maneja atributos generalmente, de hecho no tiene implementación (no asocia un espacio de
almacenamiento), así que se pueden combinar varias interfaces cosa que no permiten las
clases usuales, si se experimenta Java no permite que en la firma de una clase se pongan
dos clases después de un extends pero si de los implements , cuantas se deseen, dando la
facilidad de usar las interfaces que requiera. En este sentido es como si cada clase base que
se desee manifestar en la herencia múltiple sea una interfaz. Claro está que se puede usar
una clase concreta con extends y las demás con implements (interfaces).

POLIMORFISMO EN JERARQUÍAS DE HERENCIA


En algunos leguajes de programación orientado a objeto muchas subclases pueden heredar
de una misma superclase, y a su vez una subclase puede convertirse en superclase de otra.
Así las cosas, podemos hablar de una jerarquía de herencia. La jerarquía es el esquema
organizativo de las clases con relación de herencia entre sí.
VARIABLES POLIMORFICAS
En Java las palabras que contienen objetos son variables polimórficas. En Java, una
variable polimórfica es una variable que contiene un objeto y se refiere al hecho de que una
misma variable puede contener objetos de diferentes tipos del tipo declarado o de cualquier
subtipo del tipo declarado por eso se llama polimórfica que literalmente significa: muchas
formas.

- ArrayList:

Un arrayList declarado así puede contener objetos de cualquier tipo.


De forma general un ArrayList en Java se crea de la siguiente forma:
ArrayList nombreArray = new ArrayList();

POLIMORFISMO Y REUTILIZACIÓN

En programación orientada a objetos se denomina polimorfismo a la capacidad 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 programa.

En algunos lenguajes, el término polimorfismo es también conocido como ‘Sobrecarga de


parámetros’ ya que las características de los objetos permiten aceptar distintos parámetros
para un mismo método (diferentes implementaciones) generalmente con comportamientos
distintos e independientes para cada una de ellas.

Ejemplo:este método devuelve la suma de 2 parámetros

Function suma(int numero1,int numero2)


‘ este método devuelve la suma de los 3 parámetros
Function suma(int numero1,int numero2, int numero3)
‘ este método devuelve la concatenación de cadena1 y cadena2
Function suma(String cadena1, String cadena2)

SOBRECARGA DE FUNCIONES

Es un mecanismo que permite asignar el mismo nombre a funciones distintas. Para el


compilador estas funciones no tienen nada en común a excepción del identificador, por lo
que se trata en realidad de un recurso semántico del lenguaje que solo tiene sentido cuando
se asigna el mismo nombre a funciones que realizan tareas similares en objetos diferentes.
2. Cada estudiante realiza en un documento el modelo de herencia a aplicar en su
proyecto. En este modelo deben especificarse cada una de las clases según el
modelo de clases de la fase 2 y posteriormente implementar la herencia donde
determine cuáles son las clases padre que quedan y cuáles son las clases hijas que
quedan junto con los atributos a heredar.

Modelo de clases de la fase dos


Modelo de clases Con implementación de herencia

También podría gustarte