Mehrere Klassen mit den selben Daten

IlmoMilmo

Mitglied
Nabend zusammen,

ich habe bei mir folgende Struktur

Java:
public class X {

    public X(Class A) {

    }

    public X (Class B) {
       
    }

    public X(Class C) {

    }
}

Es soll ein Objekt der Klasse X über Daten aus Klasse A,B oder C zusammengebaut werden.
Wichtig zu wissen ist, dass alle 3 Klassen die selben Daten besitzen, die für die Erstellung von X erforderlich sind. Es sollen in allen 3 Aufrufvarianten auf die gleichen Daten zugegriffen werden.
Die einzelnen Klassen sind aber teilweise etwas unterschiedlich aufgebaut, sodass ich z. B. über Klasse A auf ein bestimmtes Datenobjekt über getAbc() zugreife, während ich bei Klasse B auf dasselbe Datenobjekt über get getDef() zugreife etc.

Die Klassen sind so vorgegeben und die Klassen A,B und C können nicht verändert werden. Mich würde nur interessieren, ob das so der gängige Weg für so ein Problem ist, oder ob sich das Problem auch anders, besser lösen lässt 🙂 Falls es in die Richtung einen Pattern geben sollte, dann bitte gerne auch den nennen 🙂

Schöne Grüße
 
Hmm, da würde ich aber Anpassungen an den Klassen A,B und C vornehmen müssen.
Das ist bei meinen Gegebenheiten leider nicht möglich.
Da A,B,C alle die notwendigen Daten für X besitzen, aber unterschiedliche Namen für die Getter Methoden haben. Ist der ein möglicher Weg.
Die Daten für X in den 3 Konsturktor Methoden, mit den jeweiligen Getter Methoden zu setzten.
 
Idealerweise haettest du deine Basis-Klasse welche diese Getter definiert und hat. Dann leitet sich A/B/C von dieser Basis-Klasse ab und in einemde Konstruktor von X musst du nur diese Basis-Klasse uebernehmen beziehungsweise akzeptieren. Dann spielt es keine Rolle welche konkrete Implementierung tatsaechlich verwendet wird.
 

Zurück
Oben