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

 X 

✒️ABAP POO Las Interfaces

ABAP POO Las Interfaces

ABAP POO Las Interfaces

U2-L6

Introducción a Interfaces

Las clases, sus instancias(objetos) y el acceso a los objetos usando variables referenciadas son la base de la POO en ABAP.

Hay veces que se requieren clases similares que proporcionen funcionalidades similares pero codificadas diferente(dan punto de contacto común con usuario). Por ej. dos clases similares "Cuenta corriente" y "Cuenta de ahorro", tienen un método para calcular comisiones del año. Las interfaces y nombres de los métodos son los mismos pero la implementación diferente.

El usuario tiene que ser capaz de ejecutar el método para todas las cuentas sin preocuparse del tipo de cada cuenta individual.

Con objetos ABAP es posible mediante el uso de interfaces.

Interfaces

Estructuras independientes que se implementan en una clase para extender el ámbito de esa clase.

El ámbito de una clase se define por sus componentes y secciones de visibilidad.

Las interfaces extienden el ámbito de una clase añadiendo sus componentes a la sección pública, permitiendo a los usuarios acceder a diferentes clases por medio de un punto de contacto común.

Las interfaces y herencia; pilares básicos del polimorfismo, permiten que un sólo método con una interface se comporte distinto en diferentes clases.

Interfaces, uso de diferentes clases de manera uniforme.
Interfaces, amplian ámbito público de clases.
Si una clase no cuenta con componentes públicos, la interface describe su ámbito público.

Definición de una Interface

Igual que las clases, se pueden definir global o localmente.
INTERFACE <interface>.
...
ENDINTERFACE
.
En la definición se pueden definir los mismos componentes que en una clase (atributos, métodos y eventos).

Los componentes en interfaces, pertenecen automáticamente a la sección pública de la clase en la que se va implementar la interface.

No tienen parte de implementación ya que los métodos son implementados en la clase.

ABAP no soporta herencia múltiple, se puede alcanzar este concepto incluyendo mas de una interface en la declaración de una clase(sentencia INTERFACE). Así se tendrán disponibles los componentes de todas las interfaces y se deberá implementar todos los métodos disponibles en las interfaces de la clase.

Implementación de Interfaces

Un componente de una interface puede direccionarse como si fuese un miembro de la clase:
<interface~componente>.
La clase implementa los métodos de todas las interfaces implementadas en su sección de implementación.
METHOD <interface~metodo>.
...
ENDMETHOD.

En cada clase los métodos de las interfaces puede implementarse de manera distinta.

Referencias a Interfaces

Variables referenciadas a interfaces o referencia a interface; pueden contener referencias a los objetos de las clases que implementan esa interface.
TYPE REF TO <interface>
La interface utilizada de referencia debe declararse antes de esta instrucción.

Acceder a componentes del objeto, añadidos con implementación de interface:
<ireferencia>-><componente>.
No se accede con esta variable, a los objetos propios de la clase que implementa la interface

Direccionar y asignar objetos usando referencias a interfaces

Variable con referencia a clase.
Si la clase implementa una interface, variable con referencia a interface.
Para que la referencia a interface apunte al mismo objeto que la referencia a clase:
<ireferencia> = <creferencia>

Para acceder a un atributo o método dependiente de instancia de una interface usando una variable referenciada a clase:
atributo: <creferencia>-><interface~atributo>
método: CALL METHOD <creferencia>-><interface~metodo>

Usando variable referenciada a interface:
atributo: <ireferencia>-><atributo>
método: CALL METHOD <ireferencia>-><metodo>

Componentes estáticos:
- Para constantes solo se puede usar el nombre de interface:
<interface>=><constante>
- Para todos los demás componentes de una interface se usan ref a objeto o clase que implementan la interface:
atributos: <clase>=><interface~atributo>
métodos: CALL METHOD <clase>=><interface~metodo>

Las interfaces se pueden declarar:
- Local; prog ABAP.
- Global; se24. Almacenadas en tipo especial de programa ABAP (pool de interfaces) (tipo J). Cada pool contiene definición de una sola interface, programa generado automático al crear la interface global, no contiene sentencias ejecutables.


 

 

 


Sobre el autor

Publicación académica de Denisse Adriana Hernandez Trujillo, en su ámbito de estudios para el Máster ABAP POO.

SAP Master

Denisse Adriana Hernandez Trujillo

Mexico - Legajo: AH80E

✒️Autor de: 71 Publicaciones Académicas

🎓Egresado de los módulos:

Certificación Académica de Denisse Hernandez

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Las Interfaces" de la mano de nuestros alumnos.

2) Que son las Interfaces? Interfaces: Son estructuras independientes que se pueden implementar en una clase para extender el ambito de esa clase. 3) Definicion de una interface La definicion de las interfaces puede ser globalmente o dentro de programa abap. Dentro del programa ABAP el codigo es el siguiente: INTERFACE <interface>. ..... ENDINTERFACE. Las interfaces no tienen una parte de implementacion ya que susu metodos son implementados en una clase que implementa la interfece. 4) Implementacion de Interfaces componente de una interface <interface~componente>. Implementar metodos de interfaces METHOD <interface~metodo>. .... ENDMETHOD. 5) Referencia a Interfaces definir referencia a una interface: TYPE REF TO <interface>...

Acceder a esta publicación

Creado y Compartido por: Juan Jose Pujol Diaz

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

SAP Expert


Una Interface se utiliza para extender el ámbito de una clase. El ámbito específico de una clase viene definido por sus componentes y sus secciones de visibilidad. Las interfaces junto a la herencia proporcionan uno de los pilares básicos del POLIMORFISMO, ya que permiten que un sólo método con una interface se comporte distinto en diferentes clases.

Acceder a esta publicación

Creado y Compartido por: Luis Alfredo Lombardi Pizarro

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

SAP Expert


Interfaz: estructura independeinte que se puede implementar en una clase para extender el ámbito de esa clase. Se define por los componentes y sus secciones de visibilidad. Las interfaces se definen con INTERCAE - ENDINTERFACE. Esta contiene la declaración de los componentes de la interfaz y se pueden definir los mismos que en una clase. No se asignan a ninguna secciónde visibilidad ya que pertenencen a la sección pública. Al imlementarse, los componentes se añaden al resto de la sección pública y se direcciona como si fueran un miembro de la clase (insterface-componente). Para definir algo que pertenence a una interfaz se usa la sentencia TYPE REF TO <interface>.

Acceder a esta publicación

Creado y Compartido por: Daniel Alejandro Monteros Segura

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

SAP Senior

Interfases: Estructuras independientes que contienen metodos (sin implementar) y parametros que pueden incluirse en una clase para extender el ambito de esa clase. Las interfases extienden el ambito de una clase agregando sus propios componentes a la SECCION PUBLICA de una clase. Definicion de una Interfase: INTERFASE <Interfase> endinterfase. No hay seccion privada o protegida en una Interfase. Automaticamente son asignados a la seccion publica de la clase. Tampoco poseen una parte de implementacion La implementacion se realiza en la clase a la que se asigna. Todos los metodos de la interfase deberan ser implementados en la clase...

Acceder a esta publicación

Creado y Compartido por: Regulo Argotte

 


 

👌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!