✒️ABAP POO - La Herencia

ABAP POO La Herencia

HERENCIA

QUE ES LA HERENCIA

Es la capacidad que tiene una clase de heredar los atributos y métodos de otra clase.

Permite crear una nueva clase a partir de una existente, heredando la nueva clase las propiedades de la existente.

ESPECIALIZACION: relación en donde una clase (la subclase) hereda todas las principales características de otra clase (la superclase)

La subclase puede agregar nuevos componentes (atributos y métodos) y reemplazar las implementaciones con los métodos heredados.

SUPERCLASE VEHICULO (atributos: marca, modelo, nro_seris, color, nro_vehiculos ) (métodos: constructor, mostrar_atributos, obtener_cantidad)

SUBCLASE AUTO (atributos los de la superclase más: tipo_auto, máximo_asientos, aceleración) (métodos: los de la superclase más: obtener_tipo)

SUBLCASE CAMION (atributos los de la superclase más: carga_máxima, n_o_tanques, n_o_neumaticos) (métodos: los de la superclase más obtener_carga)

SUBLCASE AUTOBUS (atributos los de la superclase más: max_pasajetos, baño, televisión) (Metodos: los de la cuperclase mas obtener_pasajeros)

GENERALIZACION: la superclase hereda las características de las subclases.

Ventajas de la herencia:

· Los componentes comunes solo existen una única vez en la superclase, fácil mantenimiento, centralizado.

· Los componentes en la superclase están disponibles en las subclases. Evita implementaciones redundantes.

· Permite la reusabilidad del codigo.

DECLARACION DE HERENCIA

Para declarar una relación de herencia añadimos INHERITING FROM a la sentencia de definición de clase:

CLASS <nombresubclase> DEFINITION INHERITING FROM <superclase>.

LA nueva clase hereda todos los componentes de la existente.

Si no se añade ninguna declaración a la subclase, esta contiene los mismos componentes que la superclase. Solo los componentes públicos y protegidos de la superclase son visibles a la subclase.

NOTA: Aunque los componentes privados de la superclase existen en la subclase, no son visibles.

Se pueden declarar componentes privados en una subclase que tengan los mismos nombres que componentes privados de la superclase.

Cada clase, trabaja con sus propios componentes privados.

Los métodos que una subclase hereda de la superclase, usan los atributos privados de la superclase con el mismo nombre.

TIPOS DE HERENCIA

Simple: una clase puede tener más de una subclase de la cual es superclase, pero solo puede tener una superclase de la cual es subclase

Múltiple: una clase hereda de varias superclases

NOTA: en los objeto ABAP no existe el concepto de herencia múltiple. Sin embargo podemos utilizar interfaces para simular este tipo de herencia.

Nota: El nodo raíz de todos los árboles de herencia en los objetos ABAP es la clase predefinida vacía OBJECT:

OBJECT es la clase general de todas las clases posibles. No contiene atributos. No contiene métodos. Cuando se define una nueva clase no se tiene que especificar explícitamente esta clase como superclase, esta relación está definida implícitamente.

ABSTRACT y FINAL en la sentencias METHODS y CLASS permiten definir clase abstractas y finales.

Un método ABSTRACT se define en una clase ABSTRACT y no puede ser implementado en esa clase, se debe implementar en una subclase de la clase.

Las clase ABSTRACT no pueden ser instanciadas.

Un método FINAL no puede ser redefinido en una subclase

Las clases FINAL no pueden tener subclase, son las que finalizan el árbol de herencia.


Sobre el autor

Publicación académica de Josep Antoni Lopez Moyano, en su ámbito de estudios para el Máster ABAP POO.

 

:: Al igual que Josep ¿Usted está dispuesto a aprender ABAP?

El lunes 13 Diciembre 2021 comenzamos la 🎓Carrera Consultor ABAP.
Juntos para realizar sus más grandes desafíos!

 Cargando presentación, aguarde unos instantes...

 

 

+Recursos Gratuitos en CVOSOFT:

¡Lo importante es aprender!, por eso en CVOSOFT la comunidad SAP más grande de habla hispana, ponemos a su alcance los siguientes recursos abiertos libres y gratuitos:

Buscador de Publicaciones:

 

 

Consultas y Soporte

👋Hola! Estamos listos para ayudarle con el soporte que su carrera merece.

Acceda sección contacto y seleccione canal de comunicación más cómodo para usted.

🤝Aguardamos su mensaje, ¡Éxitos!

 


 

👉Que las empresas tomen en serio sus estudios es muy importante para que su inversión educativa tenga sentido.
Las empresas líderes de United States y del Mundo confían a CVOSOFT su recurso más valioso, la formación de su gente.

¿Quieres conocerlas?