✒️ABAP Las Interfaces
ABAP Las Interfaces
Introducción a Interfaces
Clases similares pueden contener un método, en el que las interfaz y el nombre son los mismos pero la implementación es diferente.
¿Qué son las Interfaces?
Son estructuras independientes que se pueden implementar en una clase para extender el ámbito de esa clase.
Los componentes públicos definen su ámbito público, ya que sus atributos y parámetros de métodos pueden ser utilizados por todos los usuarios.
Los componentes protegidos definen su ámbito en lo que se refiere a sus subclases. Las interfaces extienden el ámbito de una clase añadiendo sus propios componentes a la sección pública. Esto permite a los usuarios acceder a diferentes clases por medio de un punto de contacto en común.
Las interfaces junto con 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.
Definición de una Interface
Las interfaces se pueden definir globalmente o localmente. Ejemplo de definición local:
INTERFACE <interface>.
... " Atributos, métodos y eventos. Todos pertenecen a la sección pública de la clase en la que la interface es implementada.
ENDINTERFACE.
Las interfaces no tienen una parte de implementación ya que sus métodos son implementados en la clase que implementa la interface.
Implementación de Interfaces
Los métodos de las interfaces se implementan en la parte de implementación de su clase.
METHOD <interface~metodo>.
...
ENDMETHOD.
Las interfaces pueden ser implementadas por diferentes clases.
Referencias a Interfaces
Se pueden crear variables referenciadas a una interface. Este tipo de variables referenciadas puede contener referencias a los objetos de las clases que implementan esa interface.Para definir una referencia a una interfaz se usa la adición TYPE REF TO <interface>. Se les llama referencia a interfaz (variable referenciada a interfaz).
Direccionar y asignar objetos usando referencias a interfaces
Si la clase implementa una interface, se puede usuar la siguiente asignación entre la variable referenciada a la clase y una referencia a interface, para hacer que la referencia a interface apunte al mismo objeto que la referencia a clase en:
<ireferencia> = <creferencia>
Para acceder a un atributo utilizaremos: <creferencia>-><interface~atributo>
Para acceder al método utilizaremos: CALL METHOD <creferencia>-><interface~metodo>
Para acceder a un atributo utilizaremos: <ireferencia>-><atributo>
Para acceder al método utilizaremos: CALL METHOD <ireferenciada>-><metodo>
Para acceder a una constante utilizaremos: <interface>=><constante>
Para acceder a un atributo estático utilizaremos: <clase>=><interface~atributo>
Para llamar a un método estático utilizaremos: CALL METHOD <class>=><intf~meth>
 
 
 
Agradecimiento:
Ha agradecido este aporte: Helen Silva Ruiz
Sobre el autor
Publicación académica de Javier Exposito Diaz, en su ámbito de estudios para la Carrera Consultor ABAP.
Javier Exposito Diaz
Profesión: Programador Abap/4 Sap - España - Legajo: PF87S
✒️Autor de: 55 Publicaciones Académicas
🎓Egresado de los módulos:
Certificación Académica de Javier Exposito