Hi zusammen,
Ich fuerchte der Titel ist nicht ganz getroffen, aber ich hoffe es kommt nah genug dran
.
Ich sitze momentan an einem Problem und kann mir nicht vorstellen, dass es dafuer keine schoene Loesung gibt. Ich habe mehrere Messages, die alle von der Klasse Message erben. Diese werden, wie der Name schon vermuten laesst, in meinem Programm durch die Gegend geschickt. Soweit auch kein Problem.
Jetzt verwaltet jede Message eine Liste von Fehlern, die bei der Verarbeitung auftreten koennen in Form von Enums. Also z.B.
Jetzt soll es in jeder Message 3 Methoden geben (setError, getError, hasError), die exakt das tun, was die Namen verraten. Sie sollen sich jeweils auf das Error-Enum beziehen, dass die jeweilige Nachricht definiert. Nun wuerde ich ungern die drei Methoden jeweils wieder in jeder Message-Subklasse implementieren, sondern sie in die Hauptklasse auslagern. Um das zu machen muesste jedoch die Hauptklasse eine Error-Enum haben, dass in den Kind-Nachrichten jeweils erweitert bzw. ueberschrieben wird, damit ich eben expliziten Fehler setzen kann. Also z.B.:
Ist sowas auch mit Enums moeglich, oder muesste ich da den Umweg ueber interne Static-Final-Klassen gehen? (Quasi so wie es vor den Enums gemacht wurde)
Vielen Dank schonmal jetzt fuer die Hilfen
Gruesse,
Daishy
Ich fuerchte der Titel ist nicht ganz getroffen, aber ich hoffe es kommt nah genug dran
Ich sitze momentan an einem Problem und kann mir nicht vorstellen, dass es dafuer keine schoene Loesung gibt. Ich habe mehrere Messages, die alle von der Klasse Message erben. Diese werden, wie der Name schon vermuten laesst, in meinem Programm durch die Gegend geschickt. Soweit auch kein Problem.
Jetzt verwaltet jede Message eine Liste von Fehlern, die bei der Verarbeitung auftreten koennen in Form von Enums. Also z.B.
Java:
public class MessageA extends Message {
public enum Error {
error_a, error_b, error_C
}
...weitere Transportdaten...
}
Jetzt soll es in jeder Message 3 Methoden geben (setError, getError, hasError), die exakt das tun, was die Namen verraten. Sie sollen sich jeweils auf das Error-Enum beziehen, dass die jeweilige Nachricht definiert. Nun wuerde ich ungern die drei Methoden jeweils wieder in jeder Message-Subklasse implementieren, sondern sie in die Hauptklasse auslagern. Um das zu machen muesste jedoch die Hauptklasse eine Error-Enum haben, dass in den Kind-Nachrichten jeweils erweitert bzw. ueberschrieben wird, damit ich eben expliziten Fehler setzen kann. Also z.B.:
Java:
MessageA m = new MessageA(objekt_fuer_den_transport);
...
m.setError(MessageA.Error.error_a);
...
if(m.getError() == MessageA.Error.error_a) ...
Ist sowas auch mit Enums moeglich, oder muesste ich da den Umweg ueber interne Static-Final-Klassen gehen? (Quasi so wie es vor den Enums gemacht wurde)
Vielen Dank schonmal jetzt fuer die Hilfen
Gruesse,
Daishy