Instanzerzeugung von abgeleiteten Typen

Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Die Objektorientierung mit ABAP®: Vererbung, Dynamische Programmierung, GUI Controls (u.a. ALV im OO).
5 Beiträge • Seite 1 von 1
5 Beiträge Seite 1 von 1

Instanzerzeugung von abgeleiteten Typen

Beitrag von nickname8 (Specialist / 134 / 17 / 19 ) »
Hallo Leute,
ich habe folgende Klassenstruktur:

Abstrakte Basisklasse mit definierten Methoden mit dem Sinn, redefiniert zu werden. In dieser abstrakten Klasse gibt es eine finale statische factory Methode, welche je nach Prozess/Customizing Instanzen abgeleiteter Klassen erzeugt und zurück gibt.
Die abgeleitete Klasse würde ich gerne als CREATE PROTECTED einstellen, damit die Instanzerzeugung an einer Stelle gekapselt ist. Leider geht das nicht, weil die Basisklasse keine Instanz der abgeleiteten Klasse erstellen darf.
Als FRIEND bekannt zu machen geht auch nicht, weil ich systemübergreifend entwickle und in den verschiedenen Systemen nicht alle abgeleiteten Klassen vorhanden sind.

Gibts sonst eine schlaue Idee das zu lösen?

Danke und LG

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Instanzerzeugung von abgeleiteten Typen

Beitrag von black_adept (Top Expert / 3943 / 105 / 886 ) »
Leg in deiner abstrakten Klasse einen Konstruktor an und mach dort einen Aufruf des FuBa SYSTEM_CALLSTACK. Wenn die Factorymethode nicht im Callstack steht wirf eine Exception oder gib eine X- oder A-Meldung aus.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Instanzerzeugung von abgeleiteten Typen

Beitrag von nickname8 (Specialist / 134 / 17 / 19 ) »
😄 ok, kreativer Ansatz.

Wäre eine Überlegung, der Nachteil ist halt, dass es "erst" zur Laufzeit gemerkt wird.

Re: Instanzerzeugung von abgeleiteten Typen

Beitrag von black_adept (Top Expert / 3943 / 105 / 886 ) »
Und warum kannst du denn das "FRIEND" nicht benutzen? Die Basisklasse sollte doch in jedem deiner Systeme vorhanden sein und wenn du in der Childklasse die Basisklasse als FRIEND einträgst ist doch alles in Butter.

Folgende Benutzer bedankten sich beim Autor black_adept für den Beitrag:
nickname8

live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Instanzerzeugung von abgeleiteten Typen

Beitrag von nickname8 (Specialist / 134 / 17 / 19 ) »
ach klar, stand auf dem Schlauch. War verwirrt und dachte das FRIEND in die Basisklasse gehört, statt andersrum...
Danke, ich teste es mal so.
FRIEND finde ich irgendwie besser als ...CALLSTACK.
Danke

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1463
Views
Generische Typen
von Elcin » 16.08.2016 15:28 • Verfasst in ABAP® für Anfänger
4
Antw.
1770
Views
Konvertierung von Typen
von Neko » 28.08.2018 14:55 • Verfasst in ABAP® Core
2
Antw.
1446
Views
Message typen im PBO
von JohnLocklay » 09.12.2016 11:44 • Verfasst in ABAP® für Anfänger
2
Antw.
2805
Views
quan typen
von kostonstyle » 28.08.2008 11:22 • Verfasst in ABAP® für Anfänger
4
Antw.
5606
Views
Generische Typen in OO
von christop » 16.06.2008 10:07 • Verfasst in ABAP® für Anfänger

Über diesen Beitrag



Die Frage ist als "gelöst" markiert. Den entsprechend Beitrag findest du hier.

Unterstütze die Community und teile den Beitrag für mehr Leser und Austausch

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 4 Tagen von jocoder 2 / 69
Etikettendruck mit SmartForms
vor einer Woche von a-dead-trousers 2 / 71

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.

Aktuelle Forenbeiträge

PDF-Anzeige unter EDGE
vor 4 Tagen von jocoder 2 / 69
Etikettendruck mit SmartForms
vor einer Woche von a-dead-trousers 2 / 71

Unbeantwortete Forenbeiträge

Zwischensumme Adobe Forms
vor 3 Wochen von Lucyalison 1 / 129
Group Items auf einer Filterbar
vor 4 Wochen von Bright4.5 1 / 165