 1. Observer / Die Umsetzung des Event-Handling folgt in weiten Teilen dem Design-Pattern Observer. Dabei spielt das Registrieren bzw. Abonnieren eine zentrale Rolle. Warum ist in diesem Zusammenhang eine Registrierung notwendig? Was ist damit gemeint? Erlutern Sie das Zusammenspiel zwischen Anbieter und Beobachter.
 ->  
 2. Beobachter
Beim Event-Handling werden die Aufgaben des Anbieters bereits durch JAVA realisiert. Lediglich der Beobachter ist vom Programmierer explizit umzusetzen. Beschreiben sie genauer welche Aufgaben bzw. Komponenten vom System bereits vorgegeben werden und welche konkreten Umsetzungen sind noch vom Programmierer zu leisten sind?
 3. Adapterklassen
 a) Nennen Sie sie die zum KeyListener passende Adapterklasse! Welche Aufgabe hat diese?
 b) Nicht fr alle Listener-Klassen gibt es passende Adapterklassen. Warum besitzt beispielsweise der ActionListener keine?
 4. Event-Parameter bestimmen
Wenn Sie auf ein Ereignis reagieren mchten, so mssen sie folgende Angaben kennen:

 a) Ereignistyp
 b) ListenerInterface (und deren Adapterklasse)
 c) Regisrierungsmethode
 d) (Interface- oder Ereignisobjekt-) Methoden. 

Bestimmen Sie diese Angaben bzw. Komponenten wenn sie auf folgende Ereignisse reagieren mchten (Mgliche Aktion in Klammern).
 
 a) Eine Taste wurde gedrckt.
(Aktion: Entsprechenden Buchstabe ausgeben.)
 b) Die rechte Maustaste wurde gedrckt
(Aktion: Mauskoordinaten anzeigen)
 c) Der Fensterschlieenschalter wurde bettigt.
(Aktion: Fenster und Programm beenden)
 5. Listenerumsetzungen
Es gibt verschiedene Varianten und Mglichkeiten eigene Listener zu realisieren beispielsweise als lokale Klasse aber auch mit Hilfe der Funktionalen Programmierung (siehe Kapitel 10.1.5). Nennen sie die unterschiedlichen Varianten und wann man sie verwendet!  