| Bean-Events |
|---|
public class java.util.EventObject extends java.lang.Object implements java.io.Serializable {
protected transient Object Source;
public EventObject(Object source) { }
public Object getSource() { }
public String toString() { }
}
java.util.EventObject
java.awt.AWTEvent
java.awt.event.ActionEvent
java.awt.event.AdjustmentEvent
java.awt.event.ComponentEvent
java.awt.event.ContainerEvent
java.awt.event.FocusEvent
java.awt.event.InputEvent
java.awt.event.KeyEvent
java.awt.event.MouseEvent
java.awt.event.PaintEvent
java.awt.event.WindowEvent
java.awt.event.ItemEvent
java.awt.event.TextEvent
sunw.util.EventObject
java.beans.PropertyChangeEvent
|
set-Methode können der neue und alte Wert vor einer
Änderung zuerst geprüft oder andere Aktionen gestartet werden. Bei den Properties wird
zwischen Indexed-, Bound-, und Constraint-Properties unterschieden.get/set-Methode mit einem int-Parameter als Index
in das Datenfeld hinzu: public setIntFeld(int index, int wert);
public getIntFeld(int index);
Die Bound-Properties einer Bean kombinieren die Verwaltung von Properties mit dem
Event-Mechanismus. Wo es angebracht ist, informieren Beans z. B. bei der Änderung einer
ihrer Properties andere interessierte Komponenten, indem sie einen "PropertyChange-Event"
auslösen. Die registrierten Beans empfangen den Event und können passend auf die
Änderung reagieren. public <PropertyType> getXXX();
public void setXXX(<PropertyType> wert);
bei einfachen Bool'schen Eigenschaften auch: public boolean isXXX();
public void setXXX(boolean wert);
public <PropertyType>[] getXXX();
public void setXXX(<PropertyType>[] werte);
oder:
public <PropertyType> getXXX(int index);
public void setXXX(int index, <PropertyType>[] wert);
public void add <EventListenerType> (EventListenerType a);
public void remove <EventListenerType> (EventListenerType a);
public void add <EventListenerType> (EventListenerType a)
throws java.util.TooManyListenersException;
public void remove <EventListenerType> (EventListenerType a);
java.beans.* (JDK1.1)java.beans.*zu erweitern, um die Bean-spezifischen Interfaces, Klassen und Exceptions zur Verfügung zu stellen. Die folgende Tabelle listet diese neuen Deklarationen jeweils mit einer kurzen Beschreibung auf:
| Klasse: | Beschreibung: |
|---|---|
| Interfaces | |
| BeanInfo | Allgemeine Schnittstelle für die Beschreibung eines Beans; üblich ist auch die Ableitung von SimpleBeanInfo |
| Customizer | Customizer sind graphische Assistenten für die aufgabenbezogene Einstellung von Eigenschaften eines Beans |
| PropertyChangeListener | Listener-Interfacefür Events, die über die Änderungen einer Property informieren (PropertyChangeEvent) |
| PropertyEditor | Schnittstelle für einfache Eingabemöglichkeiten zur Manipulierung einer Property in einem Property-Fenster |
| VetoableChangeListener | Listener für beabsichtigte Property-Änderungen (constrained); der Listener empfängt VetoableChangeEvents und kann eine Property-Änderung erlauben oder verbreiten. |
| Visibility | Interface für Beans, die eine graphische Oberfläche besitzen; reine Funktions-Beans benötigen kein GUI! |
| Klassen | |
| BeanDescriptor | Ein BeanDescriptor stellt allgemeine Informationen über einen Bean öffentlich bereit, z. B. den Java-Klassenname oder den angezeigten Namen in Builder-Tools |
| Beans | Methoden für die Instanzierung und die Behandlung des Design-Modus in Builder-Tools |
| EventSetDescriptor | Beschreibt eine Gruppe von Events, die ein Bean auslösen kann |
| FeatureDescriptor | Super-Klasse für die anderen Descriptor-Klassen, stellt Informationen für die Introspektion bereit |
| IndexedPropertyDescriptor | Beschreibt indizierte Properties |
| Introspector | Stellt wichtige Methoden für die Introspection von Objekten zur Verfügung |
| MethodDescriptor | Beschreibt die Methoden einer Bean |
| ParameterDescriptor | Beschreibt die Parameter einer Bean |
| PropertyChangeEvent | Beans können diesen Event-Typ an registrierte PropertyChangeListener senden, um über die Änderung einer Property zu informieren |
| PropertyChangeSupport | Hilfsklasse für die Verwaltung von Änderungen bei Bound-Properties |
| PropertyDescriptor | Beschreibt eine Property und das zugehörige Paar von Lese- & Schreibfunktionen |
| PropertyEditorManager | Verwaltet die unterschiedlichen Property-Editoren |
| SimpleBeanInfo | Hilfsklasse mit einer einfachen Implementation des Interfaces BeanInfo |
| VetoableChangeSupport | Hilfsklasse für die Verwaltung von Änderungen bei constrained-Properties |
| Exceptions | |
| IntrospectionException | Tritt bei Fehlern während der Introspection einer Bean auf |
| PropertyVetoException | Mit dieser Exception kann ein PropertyChangeListener die beabsichtigte Änderung einer Property verbieten |
java.beans.* Package; Quelle: Java-Magazin 1/98 [8] [8]