Ansicht
Dokumentation

ABENCLASS_METHODS - CLASS METHODS

ABENCLASS_METHODS - CLASS METHODS

ROGBILLS - Synchronize billing plans   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Methoden von Klassen

Methoden sind klasseninterne Prozeduren, die das Verhalten eines Objekts bestimmen. Sie haben Zugriff auf alle Attribute aller Instanzen ihrer Klasse und können somit den Zustand eines Objekts verändern. Methoden haben eine Parameterschnittstelle, über die sie beim Aufruf mit Werten versorgt werden und über die sie Werte an den Aufrufer zurückgeben können. Die privaten Attribute einer Klasse können nur durch Methoden der gleichen Klasse geändert werden.

Definition

Eine Methode meth wird im Deklarationsteil einer Klasse mit den Anweisungen METHODS und CLASS-METHODS deklariert und im Implementierungsteil der Klasse durch den Verarbeitungsblock

METHOD meth.
  ...
ENDMETHOD.

In Methoden können wie in jeder Prozedur lokale Datentypen und Datenobjekte deklariert werden. Methoden werden statisch über den Ausdruck meth( ... ) oder dynamisch mit der Anweisung CALL METHOD (Dynamic Invoke) aufgerufen.

Hinweis

In den Methoden einer Klasse verschattet eine Methode der Klasse eine gleichnamige eingebaute Funktion. Diese Verschattung ist unabhängig von der Art und der Anzahl der Methodenparameter und der Art und Anzahl der Argumente der Funktion. Eine Methode sollte deshalb nicht den gleichen Namen wie eine eingebaute Funktion haben.

Instanzmethoden

Eine Instanzmethode wird mit der Anweisung METHODS deklariert. Sie hat Zugriff auf alle Attribute einer Klasse und kann alle Ereignisse der Klasse auslösen.

Hinweis

Der Versuch über eine initiale Objektreferenzvariable eine Instanzmethode aufzurufen führt zu einer abfangbaren Ausnahme.

Statische Methoden

Eine statische Methode wird mit der Anweisung CLASS-METHODS deklariert. Sie hat Zugriff auf statische Attribute und darf nur statische Ereignisse auslösen.

Konstruktoren

Neben den normalen Methoden, die explizit aufgerufen werden, gibt es spezielle Methoden namens constructor und class_constructor, die implizit bei der Erzeugung von Objekten oder beim ersten Zugriff auf Klassenkomponenten aufgerufen werden.

Funktionale Methoden

Funktionale Methoden sind Methoden mit genau einem RETURNING-Parameter und beliebigen anderen Formalparametern. Funktionale Methoden können nicht nur als eigenständige Anweisung aufgerufen sondern auch als funktionaler Methodenaufruf an Operandenpositionen für Funktionen und Ausdrücke eingesetzt werden. Dort können sie auch zu Methodenverkettungen zusammengesetzt werden.

Optionale Methoden

In Interfaces können Methoden mit dem Zusatz DEFAULT zu den Anweisungen METHODS und CLASS-METHODS optional gemacht werden. Eine optionale Interfacemethode muss bei der Implementierung eines Interfaces in einer Klasse dort nicht explizit implementiert werden. Statt dessen wird bei der Definition ein Standardverhalten für Aufrufe nicht-implementierter Methoden angegeben. DEFAULT IGNORE bewirkt den Aufruf einer leeren Methode und DEFAULT FAIL löst eine Ausnahme aus.

Spezielle Methoden

AMDP-Methoden

AMDP-Methoden werden mit dem Zusatz BY DATABASE PROCEDURE oder BY DATABASE FUNCTION in einer datenbankspezifischen Sprache als ABAP Managed Database Procedures implementiert und im Datenbanksystem ausgeführt.

Kernel-Methoden

Kernel-Methoden werden zur internen Verwendung mit dem Zusatz BY KERNEL MODULE im Kernel implementiert.






RFUMSV00 - Advance Return for Tax on Sales/Purchases   BAL Application Log Documentation  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 6406 Date: 20240523 Time: 170428     sap01-206 ( 94 ms )