Suchen und Finden
Service
Infos und Kontakt
Input, Output, Kaputt – Unbekannter Verfasser
21 Delegaten &, Ereignisse (S. 20-21)
Dieses Kapitel dreht sich um die klassenüberschreitende Übermittlung von Informationen. Im Kern geht es dabei um folgende Probleme:
- Programmcode ihrer Klasse soll die Methode einer anderen Klasse aufrufen, diese andere Klasse ist aber zur Kompilationszeit nicht bekannt.
- Programmcode ihrer Klasse soll beliebig viele, aber zur Kompilationszeit unbekannte Adressaten über das Auftreten einer bestimmten Situation informieren.
Die Lösung dieser Probleme benötigt neue Mechanismen, die im weiteren Verlauf vorgestellt und erklärt werden.
21.1 Delegaten
Wie Sie an allen Beispielen bisher gesehen haben, läuft die Kommunikation zwischen Objekten primär über Methodenaufrufe. Der Aufruf einer Methode kann Daten an das Objekt übergeben oder Daten aus dem Objekt liefern. Bezeichnend für die bisherige Kommunikation ist die Passivität der Objekte zwischen den Methodenaufrufen.
Ein Becher-Objekt führt keinen Programmcode aus und ändert auch seinen Zustand nicht, wenn keine Methoden von ihm aufgerufen werden. Und weil allein unser Programm Methoden aufruft, kann sich der Zustand des Objekts auch nur durch unsere Aufrufe ändern.
Etwas schwieriger wird es, wenn nicht nur unser Programm den Zustand eines Objekts ändert,1 wir aber über eine fremde Zustandsänderung informiert werden wollen.
Der erste Schritt zur Lösung dieser Problematik besteht in einem Mechanismus, mit dem sich zur Laufzeit bestimmen lässt, welche Methoden aufgerufen werden sollen.
Alle Preise verstehen sich inklusive der gesetzlichen MwSt.; Ersparnis im Vergleich zur Printversion



















