4.7 HERENCIA.
Un objeto es heredero de otro
cuando posee todas sus propiedades y todos sus métodos y reconoce todos sus
eventos, aunque puede disfrutar de propiedades, modelos y eventos adicionales.
Se define la herencia como la característica que tienen los objetos de
derivarse unos de otros. Por otra parte la herencia supone una clase base y una
jerarquía de clases que contienen las clases derivadas de la clase base, así
las clases derivadas pueden heredar las propiedades y métodos de una clase
base, añadiendo sus propios métodos y propiedades incluso cambiar otros
elementos de la clase base que necesiten sean diferentes.
4.7.1 Tipos de herencia:
Existen dos tipos de herencia:
· Herencia simple: en esta jerarquía cada clase
tiene como máximo una sola súper clase. La herencia simple permite que una
clase herede las propiedades y métodos de su superclase de una cadena jerárquica.
· Herencia múltiple: una malla o retícula consta
de clases, cada una de las cuales puede tener dos o más superclases inmediatas.
Una herencia múltiple es aquella en la que cada clase puede heredar las
propiedades y métodos de cualquier número de clases.
4.7.2 Clases abstractas.
Con frecuencia, cuando se diseña
un modelo orientado a objeto es útil introducir clases a cierto nivel que
pueden no existir en la realidad pero que son construcciones conceptuales
útiles. Estas clases se conocen como clases abstractas. Una clase abstracta
normalmente ocupa una posición adecuada en la jerarquía de clases que le
permite actuar como un depósito de métodos y atributos compartidos para las
subclases de nivel inmediatamente inferior.
Las clases abstractas no tienen
instancias directamente. Se utiliza para agrupar otras clases y capturar
información que es común al grupo. Sin embargo, las subclases de clases
abstractas que corresponden a objetos del mundo real si perder tener
instancias.
Una clase abstracta podría ser
una impresora:
+inyectores + agujas.
Las clases derivadas de una clase
base o abstractas se conocen como clases concretas, ya que pueden instanciarse
(es decir, pueden tener instancias).
4.7.3 Anulación/sustitución.
Anulación o sustitución: cuando
redefine un método heredero en la sub clase, se dice que estoy anulando o
sustituyendo dicho método. Sería deseable una “herencia selectiva”: seleccionar
lo que se quiere heredar es la mejor forma de anulación.
Sobrecarga: propiedad que puede
darse también sin herencia. Es designar varios elementos (identificadores) con
el mismo nombre. No es anulación.
0 comentarios:
Publicar un comentario