ABAPINTERFACES_CLASS - INTERFACES CLASS

General Data in Customer Master   CPI1466 during Backup  
Diese Dokumentation steht unter dem Copyright der SAP AG.

INTERFACES - ABSTRACT, FINAL, DATA VALUES

Kurzreferenz



Syntax

INTERFACES intf
  { {[ABSTRACT METHODS meth1 meth2 ... ]
     [FINAL METHODS meth1 meth2 ... ]}
  | [ALL METHODS {ABSTRACT|FINAL}] }
  [DATA VALUES attr1 = val1 attr2 = val2 ...].

Zusätze:

1. ... ABSTRACT METHODS meth1 meth2 ...

2. ... FINAL METHODS meth1 meth2 ...

3. ... ALL METHODS {ABSTRACT|FINAL}

4. ... DATA VALUES attr1 = val1 attr2 = val2 ...

Wirkung

Im öffentlichenSichtbarkeitsbereicheiner Klasse implementiert die Anweisung INTERFACES das Interface intf in der Klasse.Zudem ist die Angabe von Zusätzen möglich, welche die Eigenschaften von Interfacekomponenten in der Klasse bestimmen.

Für intf können alle an dieser Stelle sichtbaren lokalen oder globalen Interfacesangegeben werden. Durch die Implementierung werden die Komponenten des Interfaces zu öffentlichenKomponenten der Klasse. Eine Interfacekomponente namens comp hat in der Klasse den Namen intf~comp,wobei intf der Name des Interfaces und das Zeichen ~ der Interfacekomponenten-Selektorist. Eine Klasse muss alle Methoden des Interfaces in ihrem Implementierungsteil implementieren, so lange sie diese nicht für abstrakt erklärt.

Hinweise

  • Eine Klasse kann beliebig viele verschiedene Interfaces implementieren. Alle von einer Klasse implementiertenInterfaces liegen gleichberechtigt auf einer Ebene. Wenn ein in einer Klasse implementiertes Interfaceintf zusammengesetzt ist, d.h. Komponenten-Interfaces enthält, werden diese unabhängigvon ihrer Schachtelungshierarchie wie einzelne Interfaces in der Klasse implementiert und ihre Komponentenwerden nicht über den Namen intf, sondern den ihres Komponenten-Interfaces angesprochen. Die mehrfach Verwendung des Interfacekomponenten-Selektors in einem Bezeichner(intf1~intf2~comp) ist prinzipiell nicht möglich.

  • Jedes Interface kommt in einer Klasse genau einmal vor und jede Interfacekomponente comp istimmer eindeutig über intf~comp ansprechbar. Auch die Komponenten eines Interfaces, dasdadurch, dass es Interfacekomponente eines oder mehrerer anderer Interfaces ist, scheinbar mehrmals in einer Klasse implementiert werden kann, gibt es nur ein einziges Mal.

  • Wenn eine Klasse in ihrem Implementierungsteil eine Methode intf~... eines mit INTERFACESimplementierten globalen Interfaces intf implementiert, die im Interface nicht deklariert ist,kommt es zu einer Warnung von der Syntaxprüfung. Eine solche Methodenimplementierung ist totesCoding, das nicht ausgeführt werden kann und sollte entfernt werden. Bei einem Syntaxfehler würdenKlassen unverwendbar, wenn aus einem implementierten globalen Interface Methoden nachträglichgelöscht werden, die in der Klasse ohnehin keine Rolle spielten und beispielsweise nur leer implementiert waren. Bei der Verwendung lokaler Interfaces kommt es zu einem echten Syntaxfehler.


Zusatz 1

... ABSTRACT METHODS meth1 meth2 ...

Zusatz 2

... FINAL METHODS meth1 meth2 ...

Wirkung

Mit den Zusätzen ABSTRACT METHODS und FINAL METHODS können einzelne Instanzmethodenmeth des Interfaces in der implementierenden Klasse abstrakt oder final gemacht werden. Dabeigelten die gleichen Regeln wie für die Zusätze ABSTRACT und FINAL der AnweisungMETHODS. Insbesonderemuss die gesamte Klasse abstrakt sein, wenn eine Interfacemethode abstrakt gemacht wird, und es darfkeine Interfacemethode gleichzeitig hinter ABSTRACT METHODS und FINAL METHODS aufgeführt werden.

Zusatz 3

... ALL METHODS {ABSTRACT|FINAL}

Wirkung

Statt in der Klasse einzelne Interfacemethoden abstrakt oder final zu machen, können mit dem Zusatz ALL METHODS {ABSTRACT|FINAL} alle Interfacemethoden entweder abstrakt oder final gemacht werden.

Zusatz 4

... DATA VALUES attr1 = val1 attr2 = val2 ...

Wirkung

Mit dem Zusatz DATA VALUES können einzelnen Attributen attr Anfangswerte zugeordnetwerden. Der Zusatz erfüllt für Instanzattribute die gleiche Funktion wie der Zusatz VALUEder Anweisung DATAfür klasseneigene Attribute. Konstanten, die im Interface mit der Anweisung CONSTANTSdeklariert sind, können nicht hinter dem Zusatz DATA VALUES aufgeführt werden. Weiterhin können derzeit keineAliasnamen angegeben werden.

Hinweis

Um für Interfaceattribute von Komponenten-Interfaces eines zusammengesetzten Interfaces Werte anzugeben, muss das Komponenten-Interface derzeit nochmals direkt mit der Anweisung INTERFACES eingebunden werden.




ABAP Short Reference   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.


Length: 6879 Date: 20120526 Time: 213807     triton ( 215 ms )