Herencia en POO

Page 1

HERENCIA: MODELADO Y PROGRAMACIÓN Por JORGE HERRERA CASTILLO

INTRODUCCIÓN La herencia es una de las propiedades de la POO que aplica los principios de la generalización y la especialización para la reutilización de software. La herencia es una relación de afinidad entre una clase madre (clase base) y una o varias clases hijas (clases derivadas). La clase madre permite que los objetos de las clases hijas hereden las propiedades definidas para los objetos de la clase madre. Una clase madre puede tener varias clases hijas, sin embargo para algunos lenguajes de programación orientado a objetos está restringido para que una clase hija pueda tener varias clases madres. Este mecanismo que permite que una clase hija pueda tener varias clases madres se denomina herencia múltiple. En la actualidad los lenguajes como el C# y el Java no permiten la herencia múltiple, lenguajes como el C++ permiten la herencia múltiple. Representación gráfica del significado de la herencia simple y la herencia múltiple Personas clase madre Hereda de Profesores clase hija

Mamiferos Hereda de

Hereda de

Estudiantes clase hija

Hereda de Ornitorrincos

Herencia simple Un profesor es una persona Un estudiante es una persona

Oviparos

Herencia múltiple Un ornitorrinco es un mamífero y también es un ovíparo

La figura anterior muestra como en la herencia simple un objeto que pertenezca a una clase hija puede heredar las propiedades (atributos y métodos) de una clase madre, y en una herencia múltiple un objeto de una clase hija puede heredar las propiedades definidas en varias clases madres.

EL PRINCIPIO DE LA GENERALIZACIÓN La generalización se utiliza para encontrar las propiedades comunes a un conjunto de objetos y el cual define la clase base para otras clases que heredan de esta clase base. Las propiedades de la clase base es igual a la intersección de las propiedades de todos los objetos de las clases que conforman el sistema que se modela.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.