Ich habe mehrer Klasse die so aufgebaut sind:
Derzeit gibt es KlasseA, KlasseB, KlasseC, KlasseD, aber später können sich natürlich bei Bedarf noch weitere Klassen wie KlasseE, KlasseH etc. dazugesellen.
Aufrufende Klasse:
Ausgabe: ABCD
Wie programmiere ich die aufrufende Klasse ProgrammStarten so, dass automatisch alle existierenden Klassen, die KlasseX heißen, nacheinander die statische gibAus() Methode aufrufen. Wenn ich also vor dem nächsten Programmstart die KlasseE anlege. Soll die Ausgabe wie folgt lauten:
ABCDE
dabei möchte ich nicht nachträglich an der main() Methode per Hand folgende Zeile einfügen müssen:
oder wenn ich KlasseB und KlasseC lösche, soll die Ausgabe:
AD
sein.
Irgendwelche Ideen oder Vorschläge? Ich dachte daran alle Klassen, die eine gibAus() Methode haben in ein seperates Package zu packen und dann auszulesen welche Klassen in diesem Package sind, das ganze in ein Array zu speicher und dann per foreach durchzurattern. Gute Lösung? Wenn ja wie macht man das?
############
Oder etwas anders gefragt, wenn ich ein Variable mit dem Wert "KlasseB" habe. Wie kann ich eine Instanz der KlasseB erstellen ohne, dass ich den Wert der Variablen kenne, könnte ja auch "KlasseF" sein...
Java:
public class KlasseA {
public static void gibAus() {
System.out.print("A");
}
}
public class KlasseB {
public static void gibAus() {
System.out.print("B");
}
}
Derzeit gibt es KlasseA, KlasseB, KlasseC, KlasseD, aber später können sich natürlich bei Bedarf noch weitere Klassen wie KlasseE, KlasseH etc. dazugesellen.
Aufrufende Klasse:
Java:
public class ProgrammStarten {
public static void main(String[] args) {
KlasseA.gibAus();
KlasseB.gibAus();
KlasseC.gibAus();
KlasseD.gibAus();
}
}
Ausgabe: ABCD
Wie programmiere ich die aufrufende Klasse ProgrammStarten so, dass automatisch alle existierenden Klassen, die KlasseX heißen, nacheinander die statische gibAus() Methode aufrufen. Wenn ich also vor dem nächsten Programmstart die KlasseE anlege. Soll die Ausgabe wie folgt lauten:
ABCDE
dabei möchte ich nicht nachträglich an der main() Methode per Hand folgende Zeile einfügen müssen:
Java:
KlasseE.gibAus();
oder wenn ich KlasseB und KlasseC lösche, soll die Ausgabe:
AD
sein.
Irgendwelche Ideen oder Vorschläge? Ich dachte daran alle Klassen, die eine gibAus() Methode haben in ein seperates Package zu packen und dann auszulesen welche Klassen in diesem Package sind, das ganze in ein Array zu speicher und dann per foreach durchzurattern. Gute Lösung? Wenn ja wie macht man das?
############
Oder etwas anders gefragt, wenn ich ein Variable mit dem Wert "KlasseB" habe. Wie kann ich eine Instanz der KlasseB erstellen ohne, dass ich den Wert der Variablen kenne, könnte ja auch "KlasseF" sein...
Zuletzt bearbeitet: