✒️ABAP La definición de Clases, Atributos, Métodos y Eventos
ABAP La definición de Clases, Atributos, Métodos y Eventos
Definición de clases, atributos, metodos y eventos
Clases locales y globales
Las clases en ABAP se pueden declarar globalmente o localmente. Las clases globales se definen en el generador de clases, a traves de la transacción SE24. Estas clases son almacenadas en el class pools en la libreria de clases en el repositorio R/3.
Clases locales: Una clase constará de una parte declarativa, lo que se conoce como definición de la clase, en la que se definen los componentes y una parte de implementación, lo que se conoce como implementación de la clase, en la que se implementan estos componentes.
La parte declarativa contiene la declaración de todos los componentes de la clase (atributos, metodos y eventos).
Estructura y componentes de ua clase
- Una clase contiene componentes.
- Cada componente se asigna a una sección de visibilidad (publico, protegido o privado)
- Las clases implementan metodos.
Hay dos tipos de componentes en una clase, aquellos que existen separadamente para cada objeto de una clase y aquellos que existen solo una vez para la clase entera, independientemente del numero de instancias. Estos componentes son conocidos como dependientes de instancia o independientes de instancia (o estaticos) respectivamente.
Los objetos ABAP, las clases pueden definir los siguientes componentes:
- Atributos: Son los campos de datos internos de una clase y pueden tener cualquier tipo de datos, los tipos de atributos:
- Dependientes de instancia: Donde el contenido de los atributos es especifico de cada objeto. Se declaran usando la sentencia DATA
- Independientes de instancia o estaticos: Donde el contenido de los atributos define el estado de la clase y es valido pora todas las instancias de la clase.
- Metodos: Son procedimientos internos de una clase que definen el comportamiento de un objeto. La definición y la interface de un metodo son similares a las de los modulos de funciones. Se puden declarar tipos de datos locales y objetos en los metodos de la misma manera que en cualquier otro procedimiento ABAP. Los metodos se llaman mediante la sentencia CALL METHOD, Existen tres tipos de metodos:
- Dependientes de instancia: Estos metodos se declaran usando la sentencia METHODS. Pueden acceder a todos los atributos de una clase y pueden desencadenar todos los eventos de una clase.
- Independientes de instancia o estaticos: Estos metodos se declaran usando la sentencia CLASS-METHODS. Solo pueden acceder a los atributos estaticos y desencadenar eventos estaticos.
- Especiales: Ademas de los metodos normales que se pueden llamar con la sentencia CALL METHOD, hay dos metodos especiales llamados CONSTRUCTOR y CLASS CONSTRUCTOR que son automaticamente llamados cuando se crea un objeto (CONSTRUCTOR) o cuando se accede por primera vez a los componentes de la clase (CLASS_CONSTRUCTOR)
- Eventos: Son acontecimientos o sucesos que utilizan los objetos o las clases para desencadenar la ejecución de un metodo en otro objeto clase. La unión entre el disparador del evento "Trigger" y el manejador del evento "Handler" no es establecida de antemano, si no en el entorno e ejecución. Existen dos tipos de de eventos:
- Dependientes de instancia: Se declaran con la sentencia EVENTS. Solo pueden ser desencadenados en un metodo dependiente de instancia.
- Independientes de instancia o estaticos: Se declaran con la sentencia CLASS-EVENTS. Todos lo metodos pueden desencaderna eventos estaticos. Los eventos estaticos son el unico tipo de eventos que puede ser desencadenado por un metodo estatico
Tipos y constantes
Se pueden definr tipos de datos ABAP dentro de una clase con la sentencia TYPES. Los tipos de datos no son especificos de cada instancia y existen una sola vez para todos los objetos de la clase.
Las constantes son de un tipo especial de atributos estaticos. Su valor se fija cuando son declaradas y no puede ser cambiado. Se declaran cuando la sentencia CONSTANTS. Las constantes existen solo una vez para todos los objetos de la clase.
Visibilidad de una clase.
La parte declarativa o definición de una clase se divide en tres areas de distinta visibilidad:
- PUBLIC SECTION (Parte publica): Todos los componentes declarados en la sección publica son accesibles par todos los usuarios de la clase y para todos los metodos de la clase y de cualquier clase que herede de ella. Los componentes publicos conforman la interface entrre la clase y el usuario.
- PROTECTED SECTION (Parte protegida): Todos los componentes declarados en la sección protegida son accesibles para todos los metodos de la clase y de las clases que heredan de ella. Los componentes protegidos conforman la interface entre una clase y todas sus subclases.
- PRIVATE SECTION (Parte privada): Los componentes declarados en la sección privada son solo visibles en los metodos de la misma clase. Los componentes privados no forman parte de la interface externa de la clase.
 
 
 
Sobre el autor
Publicación académica de Marvin Raul Lopez Morales, en su ámbito de estudios para la Carrera Consultor ABAP.
Marvin Raul Lopez Morales
Profesión: Consultor Senior Sap / Abap It - Guatemala - Legajo: WP66T
✒️Autor de: 157 Publicaciones Académicas
🎓Cursando Actualmente: Consultor en SAP Fiori
🎓Egresado de los módulos:
- Máster Funcional ABAP
- Máster ABAP Orientado a Objetos
- Máster ABAP for HANA
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Soy ingeniero en sistemas y cuento con mas de 20 a?os de experiencia en el ?rea de informatica, tambien he participado en la implementaci?n, migraci?n y configuraci?n de sap-erp para varias empresas.
Certificación Académica de Marvin Lopez