Está en la página 1de 28

ABAP Programación Orientada a Objetos

Conceptos Basicos
Conceptos Basicos

¿Qué es POO?
La Programación Orientada a Objetos (POO) es un paradigma de programación que busca que
nuestra forma de programar sea más cercana a la forma como nos relacionamos en nuestro día a
día.

El nombre de "Orientado a Objetos" se debe a que nuestro código creará objetos que se
encargarán de manipular los datos de entrada para así obtener datos de salida. Estos objetos
tendrán propiedades y métodos.
Conceptos Basicos

¿Qué es una clase?


Una clase es un molde del
que luego se pueden crear
múltiples objetos, con
similares características.
Conceptos Basicos
Class
Marca
Combustible
Color
# Velocidades

Objet1 Objetct2 Object3


Ford AUDI Tesla
Gasolina Hibrido Electrico
Amarillo Rojo Azul
4 velocidades 6 Velocidades 6 Velocidades

Instancias
Conceptos Basicos

Clase
Atributos
Métodos
Conceptos Basicos

POO en ABAP
Conceptos Basicos
Tipos de clases: Globales Vs.
Locales
Programa SE38 / SE80 SE24
Clase
Global

Clase
local
Programa Programa Programa Programa
Conceptos Basicos

Definición de una clase local


Conceptos Basicos
Conceptos Basicos

Referencias a objeto
Antes de crear un objeto de una clase es necesario declarar una variable referenciada
con la referencia a la clase.

Las referencias a los objetos se usan utilizando:

TYPE REF TO
Conceptos Basicos

¿Cómo crear objetos?


Conceptos Basicos

Encapsulación
Cada objeto posee una interface que determina la manera de
interactuar con él.
Conceptos Basicos

Ejemplo
Conceptos Basicos

Atributos de instancia y atributos


estáticos
Conceptos Basicos
Métodos estáticos y métodos de instancia
Estaticos Instancia
Conceptos Basicos
Implementación de métodos
Conceptos Basicos
Constructores estáticos y de instancia
Los constructores son un tipo especial de métodos que no pueden ser llamados con 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 y los 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. El constructor dependiente de instancia de una clase es
un método que se llama CONSTRUCTOR. Se declara en la sección pública de la siguiente manera:

METHODS CONSTRUCTOR. *Puede o no tener firma (IMPORTING y


EXCEPTIONS)

ENDMETHOD.

CLASS-METHODS CLASS_CONSTRUCTOR. *No tiene parámetros


….
ENDMETHOD.
Conceptos Basicos
Destructores
Es un método especial que es llamado por el sistema cuando un objeto es eliminado.

El destructor puede ser utilizado para liberar los recursos utilizados por el objeto que no son incluidos por
el GARBAGE COLLECTOR que es un FrameWork utilizado por el sistema para eliminar de la memoria las
instancias que no se utilizan.

Si el método destructor es implementado, el sistema llama al método antes de eliminar la instancia.

El método destructor es un método de instancia que no contiene parámetros y debe ser definido en la
encapsulación PUBLICA.

El método destructor no contienen instrucciones ABAP, solo se utiliza para llamar a funciones escritas en
el lenguaje de programación C.

CLEAR instancia METHODS destructor

Después de una sentencia CLEAR el sistema llama


automáticamente al método DESTRUCTOR para después
llamar al GARBAGE COLLECTOR
Conceptos Basicos
Destructores
Conceptos Basicos
Métodos funcionales
Los métodos que tiene un parámetro RETURNING se describen como
parámetros funcionales.  
Conceptos Basicos
Tipos de datos en clases
Se pueden definir en las secciones públicas, protegidas o privadas.

Se utilizan para referenciar los atributos de la clase o los parámetros de los métodos de la clase.

TYPES: BEGIN OF ty_extension, 
         address   TYPE string, 
         block     TYPE string, 
         center    TYPE i, 
       END OF ty_extension. 
       

METHODS set_home_index IMPORTING home_index TYPE ty_extension. 
Conceptos Basicos
Constantes
Podemos definir CONSTANTES dentro de las clases, estas deben de declararse en la DEFINICION de la clase
y pueden existir en cualquier sección de encapsulamiento, PUBLICA, PROTEGIDA y PRIVADA.
Conceptos Basicos

READ-ONLY
Podemos utilizar READ-ONLY para los atributos de la clase para restringir la escritura del atributo fuera de
la clase.

Funciona como un tipo de encapsulación ya que no permitimos que se modifique su valor fuera de la clase.
Conceptos Basicos
Ejemplo de READ-ONLY
Conceptos Basicos

Parámetro OPTIONAL
Podemos definir un parámetro como no obligatorio u opcional con la adición OPTIONAL después de la
definición del tipo parámetro.
Conceptos Basicos
Ejemplo de OPTIONAL
PREGUNTAS Y
RESPUESTAS

También podría gustarte