Hallo. Ich möchte einen generischen Container für Listener machen, der man den als Typenparameter spezifizierten Typen hinzufügen kann. Die Klasse hat eine Liste und die Methoden "addListener" sowie "removeListener". Nun möchte ich eine Klasse "notifyListeners" implementieren. Und hier liegt das Problem. Ich glaube, es wird mit einem Beispiel deutlicher.
Seit Java 8 kann man ja durchaus mit der Klasse "Function" Methoden in Variablenform übergeben. Ich hab's auch versucht - scheint nur in Kombination mit Generics nicht zu klappen.
Läst sich mein Vorhaben irgendwie anders realisieren?
Java:
public class Container<T> {
private ArrayList<T> elements;
public Container() {
elements = new ArrayList<T>();
}
public void notifyListeners( /*Aufzurufende Methode*/ ) {
//Für alle Elemente die übergebene Methode aufrufen
}
}
Seit Java 8 kann man ja durchaus mit der Klasse "Function" Methoden in Variablenform übergeben. Ich hab's auch versucht - scheint nur in Kombination mit Generics nicht zu klappen.
Läst sich mein Vorhaben irgendwie anders realisieren?