✒️ABAP Las propiedades de la programación orientada a objetos
ABAP Las propiedades de la programación orientada a objetos
Encapsulación: también conocido como ocultamiento, se refiere a que todos los objetos restringen la visibilidad de sus recursos (atributos y métodos) al resto de los usuarios. Las tres áreas de visibilidad (pública, privada y protegida) son la base de la encapsulación. Cada objeto posee una interfase que determina la manera de interactuar con él. La implementación del objeto es encapsulada, lo que quiere decir que desde fuera el objeto es invisible, simplemente se usa.
Los componentes públicos de las clases globales no pueden ser cambiados una vez que se ha liberado la clase. Si se quiere encapsular el estado de un objeto completamente no se tiene que declarar ningún atributo público. Además de definir la visibilidad de un atributo se puede proteger también de los cambios usando la adición READ-ONLY.
Herencia: es la capacidad que tiene una clase de heredar las propiedades y métodos de otra clase. Permite crear una clase a partir de una existente, heredando la nueva clase sus propiedades. Esto se realiza agregando la adición INHERITING FROM a la sentencia de definición de la clase: CLASS (Subclase) DEFINITION INHERITING FROM (superclase). La clase original se conoce como superclase y la nueva subclase.
Sino se añade ninguna declaración a la subclase, esta contiene los mismos componentes que la superclase. De cualquier manera, sólo los componentes públicos y protegidos de la superclase son visibles a la subclase. Aunque los componentes privados de la superclase existen en la subclase, no son visibles. Se pueden declarar componentes privados en una subclase con el mismo nombre de la superclase, cada clase trabaja con sus propios componentes privados. Los métodos que una subclase hereda de una superclase usan los atributos privados de la superclase y no ningún componente privado de la subclase con el mismo nombre.
Tipos de Herencia:
Simple: una clase puede tener más de una subclase de la cual es superclase, pero sóno puede tener una superclase de la cual es subclase.
Múltiple: una clase hereda de varias superclases.
La herencia a varios niveles forma una estructura de árbol jerárquico. El nodo raíz de todos los árboles de herencia en los objetos ABAP es la clase predefinida vacía OBJECT. Esta es la más general de todas las clases posibles ya que no contiene ni métodos ni atributos. Cuando se define una nueva clase no se tiene que definir esta clase como superclase, esta relación está definida implícitamente.
Polimorfismo: Significa que métodos que se llaman exactamente iguales, pueden comportarse de manera distinta en clases diferentes. También se lo conoce como redefinición. En otras palabras, el polimorfismo consiste en conseguir que un objeto de una clase se comporte como un objeto de cualquiera de sus subclases, dependiendo de la forma de llamar a los métodos de dicha clase / subclases. La visibilidad de un componente no puede ser cambiada nunca. En cambio se puede usar la adición REDEFINITION en la sentencia METHODS para redefinir un método público o protegido dependiente de instancia en una subclase y hacer que realice una función más especializada. Cuando se redefine un método no se puede cambiar su interface. pero tiene una nueva implementación.
 
 
 
Sobre el autor
Publicación académica de Diego Baigorria, en su ámbito de estudios para la Carrera Consultor ABAP.
Diego Baigorria
Profesión: Aux Sistemas - Argentina - Legajo: ZC10B
✒️Autor de: 83 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP Fiori
- Máster Material Management en SAP S/4HANA LOGISTIC
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial