✒️ABAP Las Interfaces
ABAP Las Interfaces
- INTERFACES
Las clases, sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de datos de la programación orientada a objetos en ABAP.
Hay veces que es necesario para clases similares proporcionar funcionalidades similares pero que están codificadas diferente en cada clase, las cuales dan un punto de contacto común con el usuario.
Con objetos ABAP esto es posible mediante el uso de interfaces, que son estructuras independientes que se pueden implementar en una clase para extender el ámbitos de esa clase. Las interfaces extienden el ámbito de una clase añadiendo sus propios componentes a la sección pública.
Las interfaces junto con la herencia proporcionan uno de los pilares básicos del polimorfismo a que permiten que un sólo método con una interface se comporte distinto en diferentes clases.
- DEFINICIÓN DE UNA INTERFACE
Se pueden definir globalmente o localmente en un programa ABAP.
INTERFACE <interface>. ... ENDINTERFACE.
Contiene la declaración de todos los componentes (atributos, métodos y eventos) de la interface. Se pueden definir los mismos componentes en una interface que en una clase.
Los componentes de las interfaces no tienen que ser asignados a ninguna sección de visibilidad ya que automáticamente pertenecen a la sección pública de la clase en la que la interface es implementada.
- IMPLEMENTACIÓN DE INTERFACES
Una interface se implementa en una clase. Los componentes de la interface se añaden al resto de componentes de la sección pública. Un componente de una interface puede ser direccionado como si fuese un miembreo de la clase bajo l siguiente nombre: <interface~componente>.
En la clase se implementan todos los métodos de las interfaces implementadas en ella: METHOD <interface~metodo>. ... ENDMETHOD.
Las interfaces pueden ser implementadas por diferentes clases. Cada una de las clases es ampliada con el mismo conjunto de componentes, aunque los métodos de la interface pueden ser implementados de manera distinta en cada clase.
- REFERENCIAS A INTERFACES
Se pueden crear variables con referencias a una interface, que pueden contener referencias a los objetos de las clases que implementen esa interface. TYPE REF TO <interface>.
Una referencia a interface permite usar: <interface_referencia>-><componente>. , para acceder a todos los componentes visibles de la interface del objeto al cual apunta la referencia.
- DIRECCIONAR Y ASIGNAR OBJETOS USANDO REFERENCIAS A INTERFACES
Para crear un objeto de la clase primero se tiene que haber declarado una variable referenciada con referencia a la clase.
Si la clase implementa una interface, se puede usar <interface_referencia> = <clase_referencia>., para hacer que la referencia a la interface apunte al mismo objeto que la referencia a la clase.
Si la interface contiene una atributo o un método dependientes de instancia se puede direccionar los componentes:
- Usando variable referenciada a una clase, para acceder a atributo: <clase_referencia>-><interface~atributo>.
- Usando variable referenciada a una clase, para acceder a método: CALL METHOD <clase-referencia>-><interface~metodo>.
- Usando variable referenciada a una interface, para acceder a atributo: <interface_referencia>-><atributo>.
- Usando variable referenciada a una interface, para acceder a método: CALL METHOD <interface_referencia>-><metodo>.
- Si los componentes estáticos de las interfaces están implicados, para acceder a una constante: <interface>=><constante>.
- Para los demás componentes estáticos de una interface, para acceder a atributo estático: <clase>=><interface~atributo>.
- Para los demás componentes estáticos de una interface, para acceder a método estático: CALL METHOD <clase>=><interface~metodo>.
 
 
 
Sobre el autor
Publicación académica de Ignacio Mart?n Bolumar, en su ámbito de estudios para la Carrera Consultor ABAP.
Ignacio Mart?n Bolumar
Profesión: Ingeniero Inform?tico - Espa?a - Legajo: ZL84Z
✒️Autor de: 94 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Ignacio Mart?n