Hallo,
ich versuch eine einfaches EventSystem zu nutzen. Dabei möchte ich allerdings instanceof vermeiden und es soll möglich sein, dass neue EventArgs erstellt werden können.
Beispiel:
Die Klasse test soll nun, je nach Args verschiedenen Verarbeitungen starten. Möglich wäre dies bspw. über ein instanceof-Vergleich. So hat kann man auch beliebige neue Args in Zukunft verwenden. Dies möchte ich allerdings vermeiden.
Eine weitere Möglichkeit wäre nun mit IDs zu arbeiten. Bspw. Strings. Die ist meiner Meinung aber auch unschön, da man so Args mit gleichen Strings nicht verhindern kann. Und auch die Fehleranfälligkeit recht hoch ist.
Mit Enums kann man auch nicht arbeiten, da diese nicht ableitbar sind. D. h. wenn ich später neue Args einführen will, müsste ich die alten Enums verändern.
Hat irgendwer dafür eine schöne Lösung oder eine Idee?
Grüße
ich versuch eine einfaches EventSystem zu nutzen. Dabei möchte ich allerdings instanceof vermeiden und es soll möglich sein, dass neue EventArgs erstellt werden können.
Beispiel:
Code:
public class test {
public void send(IMyArgs args);
}
public interface IMyArgs {
}
public class MyArgs1 {
}
public class MyArgs2 {
}
Die Klasse test soll nun, je nach Args verschiedenen Verarbeitungen starten. Möglich wäre dies bspw. über ein instanceof-Vergleich. So hat kann man auch beliebige neue Args in Zukunft verwenden. Dies möchte ich allerdings vermeiden.
Eine weitere Möglichkeit wäre nun mit IDs zu arbeiten. Bspw. Strings. Die ist meiner Meinung aber auch unschön, da man so Args mit gleichen Strings nicht verhindern kann. Und auch die Fehleranfälligkeit recht hoch ist.
Mit Enums kann man auch nicht arbeiten, da diese nicht ableitbar sind. D. h. wenn ich später neue Args einführen will, müsste ich die alten Enums verändern.
Hat irgendwer dafür eine schöne Lösung oder eine Idee?
Grüße