Ansicht
Dokumentation

ABAPCREATE_OBJECT_EXPLICIT - CREATE OBJECT EXPLICIT

ABAPCREATE_OBJECT_EXPLICIT - CREATE OBJECT EXPLICIT

Fill RESBD Structure from EBP Component Structure   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

CREATE OBJECT, TYPE

Kurzreferenz



CREATE OBJECT oref $[area_handle$]
                   TYPE ${ class  $[parameter_list$] $}
                      $| ${ (name) $[parameter_list$| parameter_tables$] $}.


Wirkung

Erzeugung einer Instanz einer explizit angegebenen Klasse. Es kann eine konkrete Klasse angegeben werden, die spezieller als der statische Typ der Objektreferenzvariablen oref oder identisch mit ihm ist. Die Referenzvariable oref kann eine Klassenreferenzvariable oder eine Interfacereferenzvariable sein. Der Name der Klasse kann wie folgt angegeben werden:

  • class
Direkte statische Angabe als class.
  • (name)
Angabe als Inhalt eines zeichenartigen Datenobjekts name. Das Datenobjekt name muss bei Ausführung der Anweisung die Bezeichnung der Klasse in Großbuchstaben enthalten. Die Bezeichnung der Klasse in name kann auch als absoluter Typname erfolgen. Es können folgende Angaben für name unterschieden werden:
  • Literal oder Konstante

Wenn das Datenobjekt name als Zeichenliteral oder als Konstante angegeben ist, kann es statisch ausgewertet werden und die angegebene Klasse wird als verwendetes Objekt erkannt.
  • Variable

Wenn das Datenobjekt name als Variable angegeben ist, ist dies eine rein dynamische Angabe und es findet keine statische Auswertung des Inhalts statt.
Bei Ausführung der Anweisung wird name in beiden Fällen erst zur Laufzeit ausgewertet.

Die Klasse muss an der aktuellen Stelle verwendbar sein:

  • Die Objekterzeugung muss vom Zusatz CREATE der Klassendefinition erlaubt sein.
  • Die Erzeugung eines Objekts einer globalen Klasse muss von der Paketprüfung erlaubt sein.

Hinweise

  • Bei der dynamischen Angabe der Klasse können die Parameter entweder statisch in parameter_list oder ebenfalls dynamisch in parameter_tables angegeben werden.

Beispiel

Erzeugung einer Instanz einer Klasse cls durch expliziten Bezug auf die Klasse. Der statische Typ der Referenzvariablen ist die Wurzelklasse object und damit allgemeiner als jede andere Klasse. Zugriffe auf Komponenten müssen dynamisch erfolgen oder es muss wie hier gezeigt gecastet werden.






BAL_S_LOG - Application Log: Log header data   CPI1466 during Backup  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 4528 Date: 20240328 Time: 223443     sap01-206 ( 57 ms )