www.wikidata.de-de.nina.az
JavaBeans sind Software Komponenten fur die Programmiersprache Java JavaBeans entwickelten sich aus der Notwendigkeit heraus GUI Klassen AWT Swing einfach zu instanziieren und mittels RMI zu ubertragen JavaBeans werden auch als Container zur Datenubertragung verwendet Daher zeichnen sich alle JavaBeans durch folgende Eigenschaften aus Offentlicher parameterloser Konstruktor Serialisierbarkeit Serializable Offentliche Zugriffsmethoden Public Getters Setters Auf Grund dieser Eigenschaften eignen sich JavaBeans auch als Datenobjekte fur Persistenzframeworks siehe Enterprise JavaBeans Inhaltsverzeichnis 1 Uberblick 2 Instanziierung 3 Zugriffsoperationen 4 Introspektion 5 Weiteres 6 Literatur 7 WeblinksUberblick BearbeitenEine JavaBean ist eine Java Klasse die einem Komponentenmodell entspricht um automatisierten Zugriff auf ihre Eigenschaften Membervariablen und Operationen Methoden zu erlauben Das Java SDK stellt Anwendungsentwicklern die Bean API das Paket java beans zur Verfugung um beispielsweise eine Kurzbeschreibung einer Bean anzuzeigen Das JavaBean Komponentenmodell wurde vor allem entwickelt um eine einheitliche API zur einfacheren Entwicklung von GUI Buildern bereitzustellen Beans realisieren eine verbesserte Serialisierung und damit Netzwerkfahigkeit Wiederverwendbarkeit Portabilitat und Interoperabilitat Eine Komponente ist nur dann eine JavaBean wenn sie der JavaBeans API Specification entspricht die von der JavaBeans Component Architecture spezifiziert wird Instanziierung BearbeitenEine JavaBean besitzt immer einen Konstruktor ohne Parameter Standardkonstruktor Dies ermoglicht eine standardisierte Instanziierung beispielsweise einer Schaltflache JButton button JButton Class forName javax swing JButton newInstance Eine Alternative dieser Instanziierung ist JButton button new JButton Zugriffsoperationen BearbeitenAlle Eigenschaften einer Bean wahren das Geheimnisprinzip information hiding Der Zugriff ist uber spezielle Operationen moglich die bestimmten Konventionen entsprechen mussen Fur eine Eigenschaft foo heisst die lesende Operation Getter getFoo Bei booleschen Variablen ist alternativ auch isFoo moglich was allgemein vorgezogen wird Die schreibende Operation Setter heisst setFoo Indizierte Eigenschaften besitzen jeweils zwei Getter und Setter Einen fur die Gesamtheit einen fur einen bestimmten Index Eine schreibgeschutzte Eigenschaft besitzt keinen offentlichen Setter Introspektion BearbeitenIntrospektion ist der Mechanismus eine Bean auf ihre Eigenschaften Ereignisse Events und Operationen zu analysieren Die API bietet dabei Moglichkeiten die eine zusatzliche Unterstutzung zur Introspektion von Seiten des Bean Entwicklers unnotig machen Beans konnen per Reflexion untersucht werden wenn sie sich an die in der Spezifikation definierten Konventionen halten Ferner gibt es die Moglichkeit fur jede Bean eine BeanInfo Klasse zu schreiben die Informationen uber die Bean ihre Eigenschaften und Operationen enthalt Die Klasse java beans Introspector sucht erst nach expliziten Informationen und vervollstandigt diese durch Reflexion Weiteres BearbeitenBei der Anderung einer Bound Property gebundene Eigenschaft mussen Objekte uber die Anderung informiert werden Bei Constrained Properties konnen diese zudem ein Veto einlegen Die Bean API stellt hierfur ein Event Delegation Model bereit Es konnen grafische Editoren und Customizer fur bestimmte Datentypen und Beans erstellt und durch sie Eigenschaften bequem angepasst werden Es gibt einen Persistenzmechanismus fur Beans So konnen Beans beispielsweise als XML Dokument gespeichert werden Literatur BearbeitenOlaf Zwintzscher Software Komponenten im Uberblick W3L 2004 ISBN 3 937137 60 2Weblinks BearbeitenJavaBeans API Specification Diplomarbeit JinBean Java GUI Builder Konzepte und Realisierung Viele der genannten Informationen sind dieser Arbeit entnommen Abgerufen von https de wikipedia org w index php title JavaBeans amp oldid 238008221