¿Cómo se pueden implementar múltiples interfaces?
Las interfaces se pueden implementar en una clase o en una interfaz.
En una clase se tiene que implementar dentro de la sección pública, ya que todos los componentes de la interfaz son públicos.
Para su implementación en una interfaz, se utiliza la palabra clave INTERFACES.
Una clase o una interfaz puede implementar múltiples interfaces, ya que no existe un límite. Se utiliza la misma palabra clave INTERFACES y se pasa el listado con todas las interfaces que se implementan.
INTERFACES: if_1, if_2, if_3………..if_n.
La clase que implementa una interfaz, que a su vez ha implementado otra interfaz, tiene la obligación de implementar todos los métodos de las dos interfaces.
Por ejemplo:
INTERFACE if_1.
METHODS m_1.
ENDINTERFACE.
Y la IF_2 implementa la IF_1
INTERFACE if_1.
INTERFACES if_2.
METHODS m_2.
ENDINTERFACE.
Ahora si una clase implementa la interfaz IF_2, tiene la obligación de implementar todos los métodos declarados en las interfaces IF_1 y IF_2, en este caso los métodos M_1 y M_2.
CLASS nombre_clase DEFINITION.
PUBLIC SECTION.
INTERFACES: if_2.
ENDCLASS.
CLASS nombre_clase IMPLEMENTATION.
METHOD if_1~m_1.
ENDMETHOD.
METHOD if_2~m_2.
ENDMETHOD.
ENDCLASS.
Para entender cómo se implementan múltiples interfaces, vamos a crear un programa ejecutable con dos interfaces: la interfaz IF_ALTA con el método ALTA_PROPUESTA y la interfaz IF_MODIFICACION con el método MODIFICACION_PROPUESTA.
Creamos la clase PROPUESTA e implementamos las dos interfaces.