🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP El tratamiento de los Objetos

ABAP El tratamiento de los Objetos

ABAP El tratamiento de los Objetos

TRATAMIENTO DE OBJETOS

1.- Utilizaciòn de Objetos:

Los objetos son instancias de las clases. Cada objeto tiene una identidad propia y tiene sus propios atributos. Todos los objetos transitorios residen en el contexto de una sesiòn interna (àrea de memoria de un programa ABAP). Una clase puede tener un nùmero indefinido de instancias.

"Un objeto existe mientras se estè usando en el programa, lo que quiere decir que existe siempre que al menos una referencia apunte hacia èl, o al menos un mètodo del objeto estè registrado como mètodo manejador de eventos".

2.- Referencia a Objetos:

Son punteros a los objetos ABAP.

Las referencias a objetos se usan para acceder a un objeto desde un programa ABAP. En ABAP los objetos estàn siempre contenidos en variables referenciadas.

Las variables referenciadas o bien contienen el valor inicial o bien contienen la referencia a un objeto ya existente. La identidad de un objeto depende de su referencia. Una variable referenciada que apunta a un objeto es la que se conoce la identidad del objeto. Los usuarios no pueden acceder a la identidad del objeto directamente.

Las variables referenciadas en ABAP son tratadas como cualquier otro objeto de datos elemental.Esto quiere decir que una variable referenciada puede contener una tabla interna o una estructura.

ABAP contiene un tipo de datos predefinido para las referencias, comparable a los tipos de datos para las estructuras o para las tablas internas. El tipo de datos completo no està definido hasta la declaraciòn en el programa ABAP. El tipo de datos de la variable referenciada determina como el programa actùa con su valor, o sea, con la referencia al objeto.

Hay dos tipos principales de referencias, la referencia a clases y la referencia a interfaces.

- Referencia a clases.- se definen usando la siguiente adiciòn:

TYPE REF TO "clase".

DATA: v_alv TYPE REF TO cl_gui_alv_grid.

Esta adiciòn se usa en las sentencias TYÈS o DATA. Una variable referenciada de este tipo se llama variable referenciada a clase simplemente.

Una referencia a clase permite al usuario crear una instancia, es decir un objeto, de la clase y acceder a un componente.

Una referencia a clase permite al usuario crear una instancia, es decir un objeto, de la clase y acceder a un componente visible, ejemplo:

cref-:componente.

3.- Creaciòn de Objetos.

Antes de crear un objeto de una clase es necesario declarar una variable referenciada con la referencia a la clase. Una vez que se ha declarado la referencia a la clase, se puede crear el objeto usando la sentencia CREATE OBJECT. Esta sentencia crea una instancia de la clase y la variable referenciada contiene la referencia al nuevo objeto.

CLASS counter DEFINITION.

PUBLIC SECTION.

METHODS: set IMPORTING value(set_value) TYPE i,

incremente,

get EXPORTING value(get_value) TYPE i.

PRIVATE SECTION.

DATA count TYPE i.

ENDCLASS.

CLASS counter IMPLEMENTATION.

METHOD set.

count = set_value.

ENDMETHOD.

METHOD increment

ADD 1 TO count.

ENDMETHOD.

METHOD get.

get_value = count.

ENDMETHOD.

ENDCLASS.

DATA number TYPE i VALUE 5.

DATA cnt TYPE REF TO counter.

START-OF-SELECTION.

CREATE OBJECT cnt.

Si no existe una referencia que apunte al objeto, entonces el objeto no puede ser accedido sintàcticamente, el garbage collector es una rutina del sistema que se inicia automàticamente cada vez que el sistema no tiene tareas màs importantes que realizar y elimina los objetos no referenciados de la memoria principal liberando espacio de la misma que permanecìa ocupado.

El propòsito del recolector de basura es identificar y descartar los objetos que ya no son necesarios para un programa de manera que sus recursos puedan ser recuperados y reutilizados.

Ejemplo:

IF r_objeto IS INITIAL.

ENDIF.

Mediante esta lògica se puede determinar si la referencia contiene la referencia nula, es decir si no apunta a un objeto.

4.- Còmo acceder a los componentes de un objeto.

Los programas sòlo pueden acceder a los componentes de las instancias usando las referencias de las variables referenciadas. La sintàxis es la siguiente, siendo ref la variable referenciada:

- Para acceder al atributo attr: ref->attr.

- Para llamar al mètodo meth: CALL METHOD ref->meth.

Para los componentes estàticos o independientes de instancias, sòlo dependientes de clase, se puede usar tanto el nombre de la clase como la variable referenciada. Tambièn es posible acceder a los componentes estàticos de una clase antes de que un objeto de la clase haya sido creado.

- Para acceder al atributo estàtico attr: class->attr.

- Para llamar al mètodo estàtico meth: CALL METHOD class->meth.

Dentro de una clase se puede acceder tambièn a los componentes individuales mediante la referencia a sì mismo ME.

- Para acceder al atributo attr en la propia clase: me->attr.

- Para llamar al mètodo meth en la propia clase: CALL METHOD me->meth.

Los constructores son un tipo especial de mètodos que no pueden ser llamados a travès de la sentencia CALL METHOD, estos mètodos son llamados automàticamente por el sistema para fijar el estado inicial de un nuevo objeto o clase.

Hay dos tipos de constructores:

- Los dependientes de instancia

- Estàticos o independientes de instancia.

Los constructores son mètodos con un nombre predefinido, para usarlos deben ser declarados explìcitamente en la clase.

Un constructor serà necesario si despuès de crear una instancia de una clase necesitamos asignar recursos, inicializar atributos que no pueden ser cubiertos con la adiciòn "value" de la sentencia DATA, modificar atributos estàticos o enviar mensajes que indiquen que un nuevo objeto ha sido creado.

No existe un destructor en los objetos ABAP.

5.- Asignaciòn de referencias.

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 a l mismo objeto.

Cuando asigna una referencia a una variable referenciada distinta, sus tipos deben ser compatibles. Cuando se usa la sentencia MOVE o el operador de asignaciòn = para asignar variables referenciadas, el sistema debe ser capaz de reconocer en el chequeo de la sintàxis si la asignaciòn va a ser posible. Esto tambièn se aplica cuando se pasan variables referenciadas como paràmetros a procedimientos.

Si escribimos la sentencia cref1 = cref2, las dos referencias tienen que tener el mismo tipo, esto es, tienen que referirse a la misma clase, o bien la clase cref1 tiene que ser la clase predefinida como vacìa, o sea OBJECT.

La clase OBJECT no tiene componentes y tiene la misma funciòn para las variables referenciadas que el tipo de datos ANY para las variables normales. Las variables referenciadas con el tipo OBJECT pueden funcionar como contenedoras para pasar referencias. De cualquier manera, nunca pueden ser usadas para acceder a objetos.

6.- Mi primer programa de objetos.

El objetivo serà simular un contador.

CLASS contador DEFINITION.

PUBLIC SELECTION.

METHODS: set IMPORTING value(set_value) TYPE i,

incrementar_contador,

get EXPORTING value(get_value) TYPE i.

PRIVATE SELECTION.

DATA count TYPE i.

ENDCLASS.

* Implementaciòn de la clase

CLASS contador IMPLEMENTATION.

METHOD set.

count = set_value.

ENDMETHOD.

METHOD incrementar_valor.

ADD 1 TO count.

ENDMETHOD.

METHOD get.

get_value = count.

ENDMETHOD.

ENDCLASS.

Declaramos las variables NUMBER de tipo i, inicializada con el valor cinco y CNT que serà una referencia de la clase contador. Luego creamos una instancia de la clase y ejecutamos el mètodo set. Finalmente, ejecutamos dentro de una iteraciòn el mètodo incrementar_contador el cual sumarà 1 al contenido de la variable number, obtenemos su nuevo valor y lo imprimimos en pantalla.

DATA number TYPE i VALUE 5.

DATA cnt TYPE REF TO contador.

START-OF-SELECTION.

CREATE OBJECT cnt.

CALL METHOD cnt->set.

EXPORTING

set:value = number.

DO 3 TIMES

CALL METHOD cnt->incrementar_contador.

ENDDO.

CALL METHOD cnt->get

IMPORTING

get_value = number.

WRITE number.

Al ejecutar el programa, la salida serà la siguiente:

8


 

 

 


Sobre el autor

Publicación académica de Miguel Angel Acosta Acosta, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Expert


Miguel Angel Acosta Acosta

Profesión: Ingeniero de Sistemas - Ecuador - Legajo: TF64C

✒️Autor de: 238 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Profesional de ingeniería de sistemas en computación e informática, con experiencia en la implantación y soporte de proyectos informáticos para empresas del sector industrial y financiero.

Certificación Académica de Miguel Acosta

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "El tratamiento de los Objetos" de la mano de nuestros alumnos.

SAP Expert


Tratamiento de objetos Utilización de objetos Los objetos son instancias de las clases. Un objeto existe mientras se este usando en el programa. Referencia a objeto Son punteros a los objetos ABAP. Se usan para acceder a un objeto desde un programa ABAP, Creación de objetos Se puede crear el objeto usando la sentencia CREATE OBJECT. Cómo 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.

Acceder a esta publicación

Creado y Compartido por: José Luis Zevallos Mamani

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

TRATAMIENTO DE OBJETOS. 1.UTILIZACION DE OBJETOS. Cada objeto tiene una identidad propia y tiene sus propios atributos. Todos los objetos transitorios residen en el contexto de una sesion interna. UNa clase puede tener un numero indefinido de instancias. 2.REFERENCIAS A OBJETOS. Son punteros a los objetos ABAP. 3.CREACION DE OBJETOS. Antes en necesario declarar una variable referenciada con la referencia a la clase. Una vez declarado se pude crear el objeto usando la sentencia CREATE OBJECT. Esta crea una isntancia de la clase y la variable referenciada contien la referencia al objeto. 4.¿COMO ACCEDER A LOS COMPONENTES DE UN OBJETO? Los programas pueden acceder usando las referencias de las variables referenciadas. Para los componentes...

Acceder a esta publicación

Creado y Compartido por: Bruno Edgardo Gallinoto / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

TRATAMIENTO DE OBJETOS. UTILIZACIÓN. Los objetos son instancias de las clase cada objeto tiene una identidad propia y sus propios atributos todos los objetos transitorios residen en el contexto de una sesión interna (área de memoria de un programa) Un objeto existe mientras se esté usando en el programa esto quiere decir que existe siempre que al menos una referencia que apunte hacia el o al menos un método del objeto este registrado como manejador de eventos. REFERENCIA A OBJETOS. Son punteros a los objetos. Hay dos tipos de referencia a clases y a interfaces. Las referencias a clases se definen usando la adición TYPE REF TO <CLASS> Esta adición se usa en las sentencias TYPES ó...

Acceder a esta publicación

Creado y Compartido por: Juan Santamaria Borja

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

TRATAMIENTO DE OBJETOS Utilización de objetos Los objetos son instancias de clases. Una clase puede tener instanciadas varios objetos. Los usuarios no pueden acceder a los objetos, es por ello que se vinculan con variables referenciadas las cuales contienen tablas internas o estructuras. 2. Referencia a objetos. Son punteros a los objetos ABAP. ABA¨contiene un tipo de datos predefinidos para las referencias, ya qye el tipo de dato no esta completo hasta la declaración en el programa Tipo de Referencia -,Referencia a clase se define con TYPE REF TO <clas> 3. Creación de Objetos Antes de crear un objeto, es necesario declarar una variable referenciada con la referencia de la clase. Una vez...

Acceder a esta publicación

Creado y Compartido por: Morela Silva

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Tratamiento de Objetos 1. Utilización de objetos Los objetos son intancias de la clase. Un objeto existe mientras se esté usando en e programa. referencia hacia el, o método manejador registrado. 2. Referencias a objetos: Punteros a los objetos TYPE REF TO <class>. 3. Creación de objetos CREATE OBJECT 4. Cómo acceder a los componentes de un objeto * Para componentes de la instancia - Atributo: ref -> attr. - Método: CALL METHOD ref -> meth. * Para componentes estáticos - Atributo: class -> attr. o me -> attr. dentro de la clase - Método: CALL METHOD class -> meth. o me -> meth. dentro de la clase ...

Acceder a esta publicación

Creado y Compartido por: Helen Silva Ruiz

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Lección 3: Tratamiento de Objetos. 1.- Utilización de objetos. Los objetos son instancias de las clases, cada objeto tiene identidad propia y tiene sus propios atributos. Un objeto existe mientras se esté usando en el programa, es decir, existe siempre que al menos una referencia apunte hacia el, o un método del objeto esté registrado como método manejador de eventos. 2.- Referencias a objetos. Son punteros a los objetos ABAP. Las referencias a objeto se usan para acceder a un objeto desde un programa ABAP, en ABAP los objetos están siempre contenidos en variables referenciadas. Las variables referenciadas en son tratadas como cualquier otro objeto de datos elemental, por lo tanto una variable...

Acceder a esta publicación

Creado y Compartido por: Calixto Gutiérrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Tratamiento de Objetos. Los objetos son instancias de las clases, cada objeto tiene una identidad propia y tiene sus propios atributos, un objeto existe mientras se está usando en el programa lo que quiere decir que existe siempre que al menos una referencia apunte hacia él. O al menos un método de objeto este registrado como método manejador de eventos. Referencias a objetos, son punteros a los objetos SAP, las referencias a objetos se usan para acceder a un objeto desde un programa ABAP en ABAP los objetos están siempre contenidos en variables referenciadas. Las variables referenciadas o bien contienen el valor inicial o bien contienen la referencia a un objeto ya existente. Las variables referenciadas en...

Acceder a esta publicación

Creado y Compartido por: Jesus Enrique Ramos Bello / Disponibilidad Laboral: FullTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

utilizacion de objetos los objetos son instancias de las clases, cada objeto tiene una identidad propia y tiene sus propios atributos. todos los objetos transitorios residen en el contexto de una sesion interna (area de memoria de una programa abap) una clase puede tener un numero indefinido de instacias. referencias a objetos son punteros a los objetos abap las referencias a objetos se usan para cceder a un objeto desde un programa abap. en abao los objetos estan siempre contenidos en variables referenciadas. las variables referenciadas o bien contienen el valor inicial o bien contienen la referencia a un objeto ya existente. la identidad de un objeto depende de su referencia. una variable referenciada que apunta a un objeto es la que conoce...

Acceder a esta publicación

Creado y Compartido por: Oscar Sebastian Caicedo Carlier / Disponibilidad Laboral: PartTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


TRATAMIENTO DE OBJETOS: Los objetos existen mientras esten en uso en el programa, es decir existe mientras al menos una referencia apunte hacia él o un método del objeto est´ñe registrado como manejador de eventos. REFERENCIAS A OBJETO: Son punteros a los objetos ABAP. Se utilizan para acceder a un objeto desde un programa ABAP. Los objetos ABAP siempre están contenidos en variables referenciadas, que ienen el valor inicial o la referencia a un objeto. Las referencias pueden ser a Clases TYPE REF TO <class> o a Interfaces. Ejemplo de declaración de una variable referenciada a Clase: DATA: v_alv TYPE REF TO c1_gui-alv_grid. Premiten crear una instancia: cref->comp CREACION...

Acceder a esta publicación

Creado y Compartido por: Juan Ignacio De Tejada Santiago / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Expert


Unidad 5: Programación Orientada a Objetos. Lección 3: Tratamiento de Objetos. Audio tip 1: Si no existe una referencia que apunte a un objeto entonces el objeto no puede ser accedido sintácticamente. El GARBAGE COLLECTOR o recolector de basura, es una rutina del sistema que se inicia automáticamente cada vez que el sistema no tiene tareas más importantes que realizar y elimina los objetos no referenciados de la memoria principal liberando el espacio de la misma que permanecía ocupado. El propósito del recolector de basura es identificar y descartar los objetos que ya no son necesarios para un programa de manera que sus recursos puedan ser recuperados y re utilizados. Dada la referencia R_OBJETO...

Acceder a esta publicación

Creado y Compartido por: Brenda Castillo Domínguez / Disponibilidad Laboral: FullTime

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!