
Un objeto existe mientras se este usando en el programa. Eso quire decir al existe siempre al menos una referenicaQue apunta al objeto o al menos un metodo del objeto esta registrado como metodo para menejador de eventos.
Las referencias a un objeto son punteros a los objetos ABAP. Los objetos siempre estan contenidos en variables referenciadas. Una variable referenciada puede contener una tabla interna o una estructura.
Hay 2 tipos de referencias:
Referencia a interfaces.
Referencia a clases: Se definen TYPE REF TO <clase>
Ejemplo
Data: instancia1 type REF TO Clase_instancia.
instancia2 like instancia1.
CREAR OBJETOS
Antes de crear un objeto, hay que referenciar la clase y luego usar el comando CREATE OBJECT <referencia>
Ejemplo
Data: r_vehiculo1 TYPE REF TO vehiculo,
r_vehiculo2 like r_vehiculo1.
Start-of-selection
CREATE OBJECT R_vehiculo1, r_vehiculo2.
Para saber si una referencia apunta a un objeto instanciado, hacemos IF r_vehiculo1 IS INITIAL …
Si queremos almacenar varios objetos de ua misma clase, podemos definir una talba interna que contenga una columna con el objeto referenciado para la clase.
Ejemplo
Data: r_vehiculo type REF TO vehiculo.
itab type TABLE OF REF TO vehiculo.
Create object r_vehiculo.
Append r_vehiculo to itab.
Garbage collector
El garbage colector es un proceso automatico del systema que borra de la memoria objetos que no estan referenciados.
Para identificar y descartar a los objetos que no son necesarios por el programa para permitir reutilizar objetos.