In diesem Tutorial erfahren Sie, wie Sie eine lokale Klasse in OO ABAP erstellen. In Core ABAP modularisieren wir den ABAP-Code mit Funktionsbausteinen und Unterprogrammen. Wir können denselben Code auch objektorientiert modularisieren, indem wir lokale Klassen im Programm erstellen. Beim Erstellen lokaler Klassen sind zwei Teile beteiligt:
- Definition
- Implementierung
Im Definitionsteil definieren wir alle Attribute und Methoden mit Zugriffsspezifizierern (obligatorisch) und alle DATEN- und Typendeklarationen werden im Definitionsabschnitt der Klasse definiert.
Wir implementieren die Methoden, dh wir schreiben den Abap-Code in die Methoden im Implementierungsabschnitt der Klasse.
Definition
** Class DefinitionCLASS lcl_demo DEFINITION. PUBLIC SECTION. "<< Access Specifier* TYPE Declarations TYPES: BEGIN OF lty_hello, name TYPE char10, age TYPE char10, vbeln TYPE vbeln, END OF lty_hello.* DATA Declarations DATA: lv_hello TYPE string, lt_hello TYPE STANDARD TABLE OF lty_hello, ls_hello TYPE lty_hello.* METHOD Definitions METHODS: say_hello.ENDCLASS.
Implementierung
** Class ImplementationCLASS lcl_demo IMPLEMENTATION. METHOD say_hello. WRITE : 'Hello OO ABAP. How are you?'. ENDMETHOD. "say_helloENDCLASS. "lcl_demo IMPLEMENTATION
Da Sie mit der Klassendefinition und der Klassenimplementierung fertig sind, besteht unser nächster Schritt darin, die Attribute und Methoden aufzurufen, die in der Klasse definiert sind. Um auf alle Komponenten der Klasse zuzugreifen, müssen wir zuerst die Klasse instanziieren (oder mit anderen Worten, wir müssen ein Objekt für die Klasse erstellen (mit Ausnahme statischer Komponenten).
Um ein Objekt für die Klasse zu erstellen, verwenden wir die folgenden zwei Codezeilen.
START-OF-SELECTION.* Instantiate the Class/Create object for the class DATA: lo_demo TYPE REF TO lcl_demo. CREATE OBJECT lcl_demo.
Um auf die Attribute und Methoden der lokalen Klasse zuzugreifen
lo_demo->say_hello( ). "Call Methods.lo_demo->lv_hello = 'Welcome'. "Class attributes.WRITE:/ lo_demo->lv_hello.
Jetzt wissen Sie, wie Sie den Abap-Code mithilfe eines objektorientierten Ansatzes programmieren und modularisieren. Nehmen Sie nun alte Programme auf, die auf prozeduralen Paradigmen basieren, und konvertieren Sie sie in objektorientierte Programme. Versuchen Sie, den objektorientierten Stil in Ihren zukünftigen Programmen, die Sie entwickeln, zu übernehmen.