Weitere aktuelle Java-Titel finden Sie bei dpunkt.
 Inhaltsverzeichnis   Auf Ebene Zurück   Seite Zurück   Seite Vor   Auf Ebene Vor   Eine Ebene höher   Index


9.2.3

Delegieren statt kaskadieren


Ein Ereignis im wird durch drei Elemente repräsentiert: Der grundlegende Zusammenhang zwischen diesen drei Elementen ist in Abbildung 9.2 dargestellt.

Abbildung 9.2: Das Zusammenspiel von Ereignis-Quelle und Event-Listener
Abbildung 9.2

Damit eine Komponente über den Eintritt eines Ereignisses in einer anderen Komponente unterrichtet werden kann, muss eine Verbindung zwischen der Quelle des Ereignisses und den Komponenten, die auf ein Ereignis reagieren, geschaffen werden. Diese Verknüpfung wird über einen Registrierungsmechanismus hergestellt. Will ein Objekt über ein bestimmtes Ereignis, das in einem anderen Objekt eintritt, informiert werden, meldet es sich bei dieser Komponente an. Es können sich beliebig viele Objekte für dasselbe Ereignis im gleichen Objekt registrieren lassen.

Beim Registrierungsvorgang speichert die Ereignisquelle einen Verweis auf die Komponente, die über das Ereignis informiert werden will. Tritt nun dieses Ereignis ein, so werden alle registrierten Objekte vom Eintritt des Ereignisses unterrichtet. Dadurch, dass die Reaktion auf das Ereignis nicht direkt in der Komponente stattfindet, in der es eingetreten ist, spricht man vom so genannten Delegationsmodell. Die Reaktion auf das Ereignis wird den Komponenten überlassen, die darauf warten.

Falls sich mehrere Objekte für dasselbe Ereignis registrieren, sollte allerdings die Reihenfolge, in der diese Objekte von dem Ereignis unterrichtet werden, keine Rolle spielen. Sie kann nicht vorhergesagt werden.


 Inhaltsverzeichnis   Auf Ebene Zurück   Seite Zurück   Seite Vor   Auf Ebene Vor   Eine Ebene höher   Index

Copyright © 2002 dpunkt.Verlag, Heidelberg. Alle Rechte vorbehalten.