Polymorphismus

Status
Nicht offen für weitere Antworten.

PollerJava

Top Contributor
Hallo,


ich erzeuge in einer Klasse einen Button und rufe, wenn er gedrückt wird, je nach dem in einer Klasse eine Methode auf

Code:
//das steht in actionPerformed(...) {

 if (states.elementAt(0).getZielSystem().equals("Ziel1"))
                myFrame.openSelectedDocument(null, bildWechselIndex);
            else 
                yourFrame.openSelectedDocument(bildWechselIndex);

states.elementAt(0).getZielSystem().equals("Ziel1") -> das frage ich aus einem Vector ab,

Meine Frage wäre jetzt, ob es da eine elegantere Lösung gibt, damit automatisch die richtige Methode aufgerufen wird?

lg
 
Wenn du einen Button hast, kann der doch nur angeklickt werden. Also Wenn Button gedrückt, dann Klasse#Methode. Versteh dein Prob gerade net so ...
 
Abhängig von dem da: states.elementAt(0).getZielSystem().equals("Ziel1") rufe ich die Methode openSelectedDocument in der Klasse myFrame oder in der Klasse yourFrame auf und ich dachte mir, vielleicht gibts da eine elegantere Lösung als die if-else- Abfrage,
irgendwie dass ich ein Interface erstelle mit der Methode openSelectedDocument und myFrame und yourFrame diese Methode implementieren.

Ich weiß aber nicht, wie der Button dann unterscheiden könnte, welche Methode er aufruft,

lg
 
Und was hat das Ganze mit deinem Button und der actionPerformed zu tun? Wenn du je nach Wert eine andere Methode aufrufen möchtest, benötigst du nunmal eine Abfrage ... weitere Möglichkeit wäre die Methode via Reflection auszuführen. Aber das wäre wohl ein bisschen übertrieben 😉 .
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben