JavaBeans

JavaBeans er programvarekomponenter for Java- programmeringsspråket . JavaBeans utviklet seg ut fra behovet for å enkelt instansere GUI- klasser ( AWT , Swing ) og overføre dem ved hjelp av RMI . JavaBeans brukes også som en container for dataoverføring. Derfor er alle JavaBeans preget av følgende egenskaper:

På grunn av disse egenskapene er JavaBeans også egnet som dataobjekter for utholdenhetsrammer (se Enterprise JavaBeans ) .

oversikt

En JavaBean er en Java- klasse som tilsvarer en komponentmodell for å gi automatisk tilgang til egenskapene ( medlemsvariabler ) og operasjoner ( metoder ). Java SDK gir applikasjonsutviklere Bean API (pakken java.beans), for eksempel for å vise en kort beskrivelse av en bønne. JavaBean-komponentmodellen ble primært utviklet for å gi en enhetlig API for enklere utvikling av GUI-byggere. Bønner realiserer forbedret serialisering og dermed nettverkskapasitet, gjenbrukbarhet , bærbarhet og interoperabilitet .

En komponent er bare en JavaBean hvis den er i samsvar med JavaBeans API-spesifikasjonen , som er spesifisert av JavaBeans Component Architecture .

Instantiering

En JavaBean har alltid en konstruktør uten parametere (standard konstruktør). Dette muliggjør standardisert instantiering, for eksempel en knapp :

JButton button = (JButton) Class.forName("javax.swing.JButton").newInstance();

Et alternativ til denne instantiasjonen er:

JButton button = new JButton();

Få tilgang til operasjoner

Alle egenskapene til en bønne bevarer hemmelighetsprinsippet (informasjonsskjul) . Tilgang er mulig via spesielle operasjoner som må overholde visse konvensjoner.

For en eiendom fookalles leseoperasjonen (getter) getFoo . Med boolske variabler er det også isFoomulig som et alternativ , som generelt foretrekkes. Skriveoperasjonen (setter) kalles setFoo. Indekserte egenskaper har hver to getters og setter: en for hele, en for en spesifikk indeks. En skrivebeskyttet eiendom har ingen (offentlig) setter.

Introspeksjon

Introspeksjon er mekanismen som en bønne har for deres egenskaper, hendelser (hendelser) å analysere og operere. API-et tilbyr alternativer som gjør at ekstra støtte for introspeksjon fra bønneutvikleren unødvendig. Bønner kan undersøkes ved refleksjon hvis de overholder konvensjonene definert i spesifikasjonen .

Det er også mulig å skrive en BeanInfo-klasse for hver bønne som inneholder informasjon om bønnen, dens egenskaper og operasjoner. Klassen leter først java.beans.Introspectoretter eksplisitt informasjon og fullfører den gjennom refleksjon.

ytterligere

Når du endrer en bundet eiendom , må objekter informeres om endringen. Hos Constrained Properties kan de også nedlegge veto . Bean API gir en delegeringsmodell for hendelser for dette.

Grafiske redaktører og tilpasere kan opprettes for visse datatyper og bønner, og egenskaper kan enkelt justeres ved hjelp av dem.

Det er en utholdenhetsmekanisme for bønner. For eksempel kan bønner lagres som et XML- dokument.

litteratur

weblenker