✒️ABAP El tratamiento de los Objetos
ABAP El tratamiento de los Objetos
1) UTILIZACIÓN DE OBJETOS.
Los objetos son instancias de las Clases y tiene sus propios atributos. Un objetos existe mientras se esté usando en el programas.
2) REFERENCIAS A OBJETOS
Son punteros a los objetos ABAP, las referencias a objetos se usan para acceder a un objeto desde un programa ABAP. La identidad de un objeto depende de su referencia. Una variable referenciada que apunta a un objeto es la que conoce la identidad del objeto. Las variables referenciadas en ABAP son tratardas como cualquier otro objeto de datos elemental.
Hay dos tipos de referencias:
- Referencias de clases. Se definen usando TYPE REF TO <class> como ejemplo:
DATA: v_alv TYPE REF TO cl_gui_alv_grid
Esta adición se usa en las sentencias TYPES o DATA
Una referencia a clase permite al usuario crear una instancia de la clase y acceder a un componente de la misma,
cref -> comp
- Referencias a interfaces
3) CREACIóN DE OBJETOS:
Antes de crear un objeto se debe declarar una variable referenciada con la referencia a la clase. Una vez declarada la referencia se puede crear el objeto usando la sentencia CREATE OBJECT.
Ejemplo:
DATA cnt TYPE REF TO counter.
START-OF-SELECTION.
CRATE OBJECT cnt.
El GARBAGE COLLECTOR (Recolector de Basura) es una rutina del sistema que se dispara automáticamente que se dedica a a eliminar los objetos no referenciados de la memoria, el próposito es identificar y descartar los objetos no necesarios para un programa. Dada la referencia r_objeto, se puede determinar si el objeto contiene una referencia nula con la lógica:
IF r_objeto is Initial.
4) COMO ACCEDER A LOS COMPONENTES DE UN OBJETO.
Los programas solo pueden acceder a los componentes de las instancias usando las referencias de las variables referenciadas. La sintaxis es,siendo ref la variable referenciada:
- Para acceder al atributo attr : ref -> attr
- Para llamar al método meth : ref -> meth
para los componentes estáticos o independientes de instacias se puede usar tanto el nombre de la clase como la variable referenciada, considerando class la clase
- Para acceder al atributo estatico attr : class -> attr
- Para llamar al método estático meth : CALL METHOD class -> meth
O se puede referencia a si mismo con ME:
- Para acceder al atributo attr en la propia clase : me -> attr
- Para llamar al método meth en la propia clses : CALL METHOD me -> meth
Los CONSTRUCTORES no pueden ser llamados por la sentencia CALL METHOD, estos métodos son llamados automáticamente por el sistema para fijar el estado inicialde un nuevo objeto o clase, hay 2 tipos de constructores:
- Dependientes de instancia
- Estáticos o independientes de instancia
Estos son métodos con nombre predefinido y para usarlos se debe declarar en la clase.
5) ASIGNACIÓN DE REFERENCIA.
Se pueden asignar referencias a distintas variables referenciadas usando la sentencia MOVE, de esta manera se puede tener las referencias en varias variables referenciadas apuntando al mismo objeto.
Si se escribe cref1 = cref2 las dos referencias deben ser del mismo tipo, o bien cref1 tiene que ser del tipo OBJECT ( Clase predefinida que funciona igual del tipo de datos ANY). Las variables referenciadas tipo OBJECT pueden funcionar como contenedoras para pasar referencias, nunca pueden ser usadas para acceder objetos.
 
 
 
Sobre el autor
Publicación académica de Maria Guadalupe Gonzalez Sanchez, en su ámbito de estudios para la Carrera Consultor ABAP.
Maria Guadalupe Gonzalez Sanchez
Mexico - Legajo: LB83R
✒️Autor de: 147 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP BI / BW BO Nivel Inicial
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial