Ansicht
Dokumentation

ABAPCLASS_DEFERRED - CLASS DEFERRED

ABAPCLASS_DEFERRED - CLASS DEFERRED

rdisp/max_wprun_time - Maximum work process run time   ABAP Short Reference  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

CLASS, DEFERRED

Kurzreferenz



CLASS class DEFINITION DEFERRED $[PUBLIC$].

Wirkung

Diese Variante der Anweisung CLASS dient dazu, die Klasse class unabhängig vom Ort der eigentlichen Definition vorläufig im Programm bekannt zu machen. Sie leitet keinen Deklarationsteil ein und darf nicht mit ENDCLASS abgeschlossen werden.

  • Ohne den Zusatz PUBLIC macht die Anweisung eine lokale Klasse vor ihrer eigentlichen Definition bekannt. Das Programm muss an späterer Stelle einen Deklarationsteil für class enthalten. Es ist nicht möglich, auf einzelne Komponenten vor der eigentlichen Definition zuzugreifen. Die Anweisung ist notwendig, wenn man sich auf eine lokale Klasse beziehen will, bevor sie definiert wird.
  • Mit dem Zusatz PUBLIC macht sie eine globale Klasse bekannt und verzögert das Laden der Klasse bis zum Ende der aktuellen Programmeinheit. Der Zugriff auf einzelne Komponenten ist erst nach dem Laden der Klasse möglich. Die Anweisung kann verwendet werden, um ungewollte Rekursionen beim Bezug auf globale Klassen zu verhindern.

Hinweis

Auch diese Variante der Anweisung CLASS kann nur in dem unter CLASS beschriebenen Kontext aufgeführt werden.

In diesem Beispiel verwendet die Klasse c1 die Klasse c2 und umgekehrt. Deshalb muss eine der Klassen vor ihrer eigentlichen Definition bekannt gemacht werden.

Beispiel

Ein Beispiel für die Verwendung des Zusatzes DEFERRED PUBLIC wäre eine Typgruppe, in der ein Referenztyp mit Bezug auf eine globale Klasse deklariert wird, welche selbst Komponenten mit Bezug auf diesen Referenztyp enthält. In diesem Fall kann nicht die gesamte Klasse vor der Typgruppe geladen werden, da die Typen dann noch nicht bekannt sind. Nach der Anweisung CLASS DEFINITION ... DEFERRED PUBLIC kann der Klassenname aber hinter REF TO angegeben werden, ohne dass die Klasse vorher schon geladen wird.






RFUMSV00 - Advance Return for Tax on Sales/Purchases   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 2525 Date: 20240424 Time: 034145     sap01-206 ( 53 ms )