✒️ABAP POO / Las Interfaces Por Jeferson Pena Curvelo

Selector Alummnos / Empresas

ABAP Las Interfaces

ABAP Las Interfaces

Introducción a Interfaces: Las clases, sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la programación orientada a objetos en ABAP.

Además, hay veces en las que es necesario para clases similares proporcionar funcionalidad similares pero que están codificadas diferentes en cada clase, las cuales dan un punto de contacto común con el usuario.

Por Ejemplo, podríamos tener dos clases similares, Cuenta Corriente y Cuenta de ahorro, las cuales tienen un método para calcular las comisiones del año. Las interfaces y nombres de los métodos son los mismos pero la implementación es diferente.

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

Interfaces: Son estructuras independientes que se pueden implementar en una clase para extender el ámbito de esa clase.

El ámbito específico de una clase viene definido por sus componentes y sus secciones de visibilidad.

Por ejemplo, los componentes públicos de una clase definen su ámbito público, ya que todos sus atributos y los parámetros de los métodos pueden ser utilizados por todos los usuarios.

Los componentes protegidos de una clase 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 usuario acceder a diferentes clases por medio de un punto de contacto común.

Las interfaces junto con la herencia proporcionan uno de los pilares básicos del polimorfismo, ya que permiten que un solo método con una interface se comporte distinto en diferentes clase.

Las Interfaces permiten usar diferentes clase de forma uniforme, aprovechando las referencias hacia las interfaces es decir el polimorfismo. Por ejemplo las interfaces implementadas en diferentes clases amplían el ámbito público de la clase en el mismo conjunto de componentes. Si la clase no tiene ningún componente publico especifico de ella mismo. Entonces la interface describe completamente el ámbito público de la clase.

Definición de una interface: al igual que las clases, las interfaces se pueden definir o bien globalmente en el repositorio R/3 o localmente en un programa ABAP. La definición de una interface local es el código existente entre las sentencias siguientes:

INTERFACE <interface>.

La definición 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 publica de la clase en la que la interface es implementada.

Las interfaces no tienen una parte de implementación ya que sus métodos son implementados en la clase que implementa la interface.

Los objetos ABAP no soportan herencia múltiple. En ABAP solo es posible implementar herencia simple, es decir, una clase solo puede heredar de otra clase, si tratamos de definir múltiples superclases cuando definimos una clase el compilador de ABAP dará un error. Pero dado que podemos incluir más de una interface en la declaración de una clase utilizando la sentencia INTERFACE de esta forma podremos alcanzar el concepto de herencia múltiple. La clase que implementa las interface tendrá disponibles todos los componentes de todas las interfaces. Deberemos implementar todos los métodos que estén disponibles en las interfaces de la clase.

La implementación de Interfaces: Cuando se implementa una interface 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 miembro de la clase bajo el siguiente nombre

<interfacecomponente>.

La calse tiene que implementar los métodos de todas las interfaces implementadas en ella. La parte de implementación de la clase debe contener la implementación de cada método de la interface:

METHOD <interfacemetodo>.

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.

Para definir una referencia a una interface se usa la siguiente adición:

TYPE REF TO <interface>

La interface que utilicemos para definir la referencia debe haber sido declarada en el programa antes que esta declaración tenga lugar.

Una referencia a interface permite al usuario usar la siguiente declaración:

<ireferencia>-><componente>

Para acceder a todos los componentes visibles de la interface del objeto al cual la referencia está apuntando.

Esto permite al usuario acceder a todos los componentes del objeto que fueron añadidos a su definición al implementar la interface.

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

Si la interface contiene un atributo dependiente de instancia y un método dependiente de instancia se puede direccionar los componentes de la interface de la siguiente forma:

Usando la variable referenciada a una clase:

  • Para acceder a un atributo: <creferencia>-><interfaceatributo>
  • Para acceder al método: CALL METHOD <creferencia>-><interfacemetodo>

Usando la variable referenciada a una interface:

  • Para acceder a un atributo: <ireferencia>-><atributo>

Siempre que los componentes estáticos de las interfaces estén implicados solo se puede usar el nombre de la interface para acceder a las constantes:

  • Para acceder a una constante: <interface> =><constante>

Para todos los demás componentes estáticos de una interface, solo se pueden usar referencias a objetos o la clase que implementa la interface:

  • Para acceder a un atributo estático: <clase>=><interfaceatributo>
  • Para llamar a un método estático: CALL METHOD <class>=><intfmeth>

Las interfaces son tipos de objetos que se pueden definir localmente en un programa ABAP o bien globalmente a través del repositorio R/3 en la transacción SE24. Si se definen interfaces globalmente entonces estas son almacenadas en un tipo especial de programa ABAP llamado INTERFACE POOL, el cual es del tipo J y sirve como contenedor del respectivo tipo de objeto. Cada POOL de interfaces contiene la definición de una sola interface. Este programa es generado automáticamente cuando creamos la interface Global. Un pool de interface es comparable a un MODULE POOL o un Grupo de Funciones. Los pool de interfaces no contienen ninguna sentencia ejecutable. Cuando se implementa una interface de la clase la definición de la interface queda implícitamente incluida en la definición de clase


 

Escanear / Compartir

 

 


Sobre el autor

Publicación académica de Jeferson Jos Pena Curvelo, en su ámbito de estudios para el Master ABAP Orientado a Objetos.

SAP Expert


✒️+Comunidad Académica CVOSOFT

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

SAP Expert



Las interfaces en ABAP son un pilar de la Programación Orientada a Objetos (POO), utilizadas para definir un conjunto de métodos sin implementar, que sirven como contrato entre distintas clases. Permiten estandarizar comportamientos y garantizar que las clases que las implementen cumplan con determinadas funciones, sin importar su jerarquía o estructura interna. En ABAP, una interfaz se declara con la palabra clave INTERFACE y sus métodos se implementan en las clases mediante INTERFACES. Este enfoque fomenta la reutilización de código, la independencia entre componentes y la extensibilidad del sistema. Las interfaces pueden combinarse con herencia y polimorfismo, permitiendo que distintos objetos...

Acceder a esta publicación

Creado y Compartido por: David Ibarra / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


Introducción a Interfaces: Las clases, sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la programación orientada a objetos en ABAP. Además, hay veces en las que es necesario para clases similares proporcionar funcionalidad similares pero que están codificadas diferentes en cada clase, las cuales dan un punto de contacto común con el usuario. Por Ejemplo, podríamos tener dos clases similares, Cuenta Corriente y Cuenta de ahorro, las cuales tienen un método para calcular las comisiones del año. Las interfaces y nombres de los métodos son los mismos pero la implementación es diferente. El usuario de las clases y las instancias...

Acceder a esta publicación

Creado y Compartido por: Jeferson Jos Pena Curvelo / Disponibilidad Laboral: FullTime

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

SAP Master

Las clases , sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la POO en ABAP, además hay veces que es necesario para las clases similares , proporcionar funcionalidades similares pero que están codificadas diferentes en cada clase, las cuales dan un punto de contacto común con el usuario. Por ejemplo, podríamos tener dos clases similares , Cuenta corriente y Cuenta de ahorro , las cuales tienen un método para calcular las comisiones del año, Las interfaces y nombre de los métodos son los mismos pero la implementación es diferente. El usuario de las clases y las instancias tiene que ser capaces de ejecutar el método para todas las...

Acceder a esta publicación

Creado y Compartido por: Tobias Emanuel Mareco Rojas / Disponibilidad Laboral: FullTime

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

SAP Expert


Las Interfaces. Que son? Son estructuras independientes que se pueden implementar en una clase para extender el ambito de esa clase. Al igual que las clases, las interfaces se pueden definir o bien globalmente en el Repositorio R/3 o localmente en un programa ABAP. La definicion de una interface local es el codigo existente entre las sentencias siguientes INTERFACE <interface> ENDINTERFACE. Las interfaces no tienen una parte de implementacion ya que sus metodos son implementados en la clase que implementa la interface. Cuando se implementa una interface en una clase, los componentes de la interface se añaden al resto de componentes de la seccion publica. Las variables referenciadas permiten acceder a los objetos. En lugar de crear...

Acceder a esta publicación

Creado y Compartido por: David De Jesùs Restrepo Cañas

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

SAP SemiSenior

INTERFACES Las clases, sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la programación orientada a objetos en ABAP. Además, hay veces en las que es necesario para clases similares proporcionar funcionalidades similares pero que están codificadas diferentes en cada clase, las cuales dan un punto de contacto común con el usuario. Por ejemplo, podríamos tener dos clases similares, cuenta corriente y cuenta de ahorro, las cuales tienen un método para calcular las comisiones del año. Las interfaces y nombres de los métodos son los mismos pero la implementación es diferente. El usuario de las clases y las instancias tiene que ser capaz...

Acceder a esta publicación

Creado y Compartido por: Enrique Horacio Lugo Lander

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

SAP Master

INTERFACES INTRODUCCION A INTERFACES La base de la POO en ABAP son las clases, instancias (los objetos) y el a cceso a los objetos usando variables. En algunos casos es necesrio isar clases similares porporcionar funcionalidades similares pero codificadas de diferentes en cada clase. El usuario de la clase y las instancias, es capaz de ejecutar el metrodo para todas las cuentas. QUE SON LAS INTERFACES? INTERFACES. Estructuras independientes que se pueden implementar en una clase para extender el ambito de esa clase Una clase viene definido por sus componentes y sus secciones de visibilidad. Las interfaces junto con la herencia proporcionan uno de los pilares basicos del polimorfismo. Las interfaces permiten usar diferentes clases de manera...

Acceder a esta publicación

Creado y Compartido por: Ixhel Magai Lopez Valencia / Disponibilidad Laboral: PartTime + Carta Presentación

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

SAP SemiSenior

Interfaces Son estructuras independientes que se pueden implementar en una clase, permitiendo extender el ambito (sus componentes y secciones de visibilidad) de la misma. Junto con la hererencia, es uno de los pilares del polimorfismo, ya que permite que un solo metodo de una interface se comporte distinto en diferentes clases que la implementen. Si la clase no tiene componentes publicos, al implementar una interfaz, la interfaz definira el ambito publico de la clase. Las interfaces se pueden definir de manera local o global. Si se defininen interfaces globales, se guardan en un pool de interfaces tipo J, que continue la definicion de una sola interfaz y es generado automaticamente cuando creamos una interface global. Para definicion...

Acceder a esta publicación

Creado y Compartido por: Juan Pablo Carro / Disponibilidad Laboral: FullTime

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

SAP Expert


Interfaces Introducción a interfaces Las clases, sus instancia (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la programación orientada a objetos en ABAP. Que son las interfaces? Interfaces: Son estructuras independientes que se pueden implementar en una clase para extender el ambito de esa clase. El ambito especificos de una clase viene definido por sus componentes y sus secciones de visibilidad. Los componentes protegidos de una clase definen su ambito en lo que se refiere a sus subclases. Las interfaces extienden el ambito de una clase añadiendo sus propios componentes a la sección publica. Estos permite a los usuarios acceder a diferentes clases por medio de un punto de contacto...

Acceder a esta publicación

Creado y Compartido por: Marvin Raul Lopez Morales / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Expert


INTERFACES – LECCION 2-6 INTRODUCCION A INTERFACE Las clases, sus instancias (los objetos) y el acceso a los objetos usando variables referenciadas son la base de la programación orientada a objeto Además, hay veces en las que es necesario para clases similares proporcionar funcionalidades similares pero que están codificadas diferentes en cada clase, las cuales dan un punto de contacto común con el usuario Por ejemplo, podríamos tener dos clases similares, cuenta corriente y cuenta de ahorro, las cuales tienen un método para calcular las comisiones del año. Las interfaces y nombres de los métodos son los mismos pero la implementación es diferente El usuario de las clases...

Acceder a esta publicación

Creado y Compartido por: Cristian Darwin Arteaga Diaz / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Senior

Bien, el ejercicio me resultó interesante, porque lo cambié un poquito. Me quedó claro que la variable referenciada a Interface es una variable. Me confundí pensando que era otro objeto. Eso me quedó en claro en el ejercicio, donde hice caso omiso a imprimir la tabla y decidí imprimir directamente cada caso. SPAN { font-family: "Courier New"; font-size: 10pt; color: #000000; background: #FFFFFF; } .L0S31 { font-style: italic; color: #808080; } .L0S32 { color: #3399FF; } .L0S33 { color: #4DA619; } .L0S52 { color: #0000FF; } .L0S55 { color: #800080; } .L0S70 { color: #808080; } *&---------------------------------------------------------------------* *& Report ZPRUEBA_INTERFACE_RQ48L *&...

Acceder a esta publicación

Creado y Compartido por: Alfredo César

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 99.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:


🔎Googlear en CVOSOFT:
Googlear: "ABAP - Las Interfaces"

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!