VL 10 Polymorphie Flashcards
Was bedeutet Polymorphie im ABAP?
-Redefinition von Methoden durch Vererbung, in der Subklasse, indem sie spezialisiert werden
-Redefinition von Methoden, die in Interfaces deklariert worden und in bezogenen Klassen speziell
implementiert werden
-> nur die Referenzvariablen weisen polymorphes Verhalten auf die dynamische Typen annehmen,
nicht die Objekte.
Erklären Sie an folgendem Code polymorphes Verhalten.
Welches Element in folgendem Code ist der statische,
welches der dynamische Typ?
CLASS myclass2 DEFINITION INHERITING FROM myclass.
CLASS myclass3 DEFINITION INHERITING FROM . . .
DATA: o_ref TYPE REF TO myclass
CREATE OBJECT o_ref.
. . .
CREATE OBJECT o_ref TYPE myclass2
. . .
CREATE OBJECT o_ref TYPE myclass3
Das ein polymorphe Verhalten in diesem Codeausschnitt ist das zuerst die Klassen myclass2 und 3 von der Klasse myclass erben und eine Referenzvariable wird erstellt DATA: o_ref TYPE REF TO myclass. Dann werden von dieser Referenz neue Objekte erstellt, diese wird dann wahrscheinlich in den unteren Abschnitten redefiniert.
DATA: o_ref TYPE REF TO myclass ist der statische Typ CREATE OBJECT o_ref TYPE myclass2 sind die dynamischen Typen CREATE OBJECT o_ref TYPE myclass3
Erklären Sie einen praktischen Vorteil für den Ansatz der Polymorphie?
+Die Polymorphie ermöglicht die Erstellung generischer Programme, die sich
stabil gegenüber neuen Anforderungen verhalten:
-> Implementierungen können verändert oder erweitert werden, ohne
Auswirkung auf den Zugang.