
HERENCIA: Capacidad de una clase de heredar los atributos y métodos de otra clase. Permite crear una nueva clase a partir de una existente heredando sus propiedades.
Especialización: una clase (subclase) hereda todas las principales características de otra clase (superclase).
Generalización: cuando la superclase hereda las características de la subclase.
Ventajas:
-> los componentes comunes se pueden mantener centralmente al existir una única vez en la superclase.
-> se evitan implementaciones redundantes, pues los componentes de las superclases están disponibles también en las subclases.
->. proporciona reusabilidad del código pues se puede reutilizar el código escrito para una clase, añadiendo código especifico para cada subclase.
DECLARACION: añadimos INHERITING FROM a la definición de la clase. CLASS <subclase> DEFINITION INHERITING FROM <superclase>.
Sólo los componentes públicos y protegidos de la superclase son visibles a la subclase. Los componentes privados de la superclase NO son visibles.
TIPOS:
-> Simple: una clase puede tener mas de una subclase de las cuales es superclase, pero sólo tiene una superclase.
¡----------CLASE1------------¡ ¡ ¡ CLASE2 CLASE3
-> Multiple: una clase hereda de varias superclases.
"NO EXISTE HERENCIA MULTIPLE EN ABAP." Se utilizan interfaces para su simulación.
OBJECT: clase más general . No contiene atributos ni métodos. La relación está definida implícitamente.