INTERFACES intf
Short Reference
ABAP Syntax INTERFACES intf.
What does it do? Within the declaration of an interface, the
INTERFACES statement integrates interface intf in the declared
interface. You cannot specify an additions. As a result, the interface
intf becomes a component interface of a composite interface.
An interface can be composed of any number of different component
interfaces. All these interfaces are equally valid on one level. If a
component interface itself is a composite (that is, it contains its own
component interfaces) the nesting hierarchy is irrelevant for the
composition of the interface. It is relevant, however, for accessing the
interface components.
To access a component comp of a component interface intf
within a composite interface, you can use the expression intf~comp
with the interface component selector (~) . Multiple use of
the interace component selection in an identifier (such as
intf1~intf2~comp ) is generally not supported. Within a composite
interface, you can use the interface component selector to access only
interface components of the component interface that are integrated in
this interface using the statement INTERFACES . Since all nested
interfaces are at the same level, however, all that is needed to access
the interface components of all component interfaces is the name of
their interface.
Latest notes: Each interface and its components appear only once in a
composite interface. Even an interface that is seemingly implemented
more than once in an interface, because it is an interface component of
one or more other interfaces, really exists only once.
Since there are no separate namespaces for global and local
interfaces, you have to make sure that compositions of local interfaces
do not result in combinations of global and local interfaces with
identical names, because they cannot be equally valid on the same level
in their implementation.
Example ABAP Coding The following example illustrates how you can use the
INTERFACES statement to compose and implement interfaces. Class
c1 implements the composite interfaces i2 and i3 .
Although i1 is a component interface of i2 and i3 ,
it exists only once in class c1 . A reference variables iref1
of the static type i1 is used to generate an object class
c1 and call method i1~m1 , which is implemented there.
INTERFACE i1.
METHODS m1.
ENDINTERFACE.
INTERFACE i2.
INTERFACES i1.
METHODS m2.
ENDINTERFACE.
INTERFACE i3.
INTERFACES i1.
METHODS m3.
ENDINTERFACE.
CLASS c1 DEFINITION.
PUBLIC SECTION.
INTERFACES: i2, i3.
ENDCLASS.
CLASS c1 IMPLEMENTATION.
METHOD i1~m1.
...
ENDMETHOD.
METHOD i2~m2.
...
ENDMETHOD.
METHOD i3~m3.
...
ENDMETHOD.
ENDCLASS.
DATA iref1 TYPE REF TO i1.
START-OF-SELECTION.
CREATE OBJECT iref1 TYPE c1.
iref1->m1( ).
Documentation extract taken from SAP system, � Copyright SAP AG. All rights reserved