JavaBeans
JavaBeans to komponenty oprogramowania dla języka programowania Java . JavaBeans powstało z potrzeby łatwego tworzenia instancji klas GUI ( AWT , Swing ) i przesyłania ich za pomocą RMI . JavaBeans są również używane jako kontener do przesyłania danych. Dlatego wszystkie komponenty JavaBeans charakteryzują się następującymi właściwościami:
- Konstruktor bez parametrów publicznych
- Możliwość serializacji (serializowalna)
- Publiczne metody dostępu (getters publiczne / ustawiaczy)
Ze względu na te właściwości komponenty JavaBeans są również odpowiednie jako obiekty danych dla struktur trwałości (patrz Enterprise JavaBeans ) .
Przegląd
JavaBean to klasa Java, która odpowiada modelowi komponentu, aby umożliwić automatyczny dostęp do jego właściwości ( zmiennych składowych ) i operacji ( metod ). Java SDK zapewnia programistom aplikacji Bean API (pakiet java.beans), na przykład do wyświetlania krótkiego opisu komponentu bean. Model komponentów JavaBean został opracowany przede wszystkim w celu zapewnienia ujednoliconego interfejsu API ułatwiającego tworzenie kreatorów GUI. Fasola realizuje ulepszoną serializację, a tym samym możliwości sieciowe, możliwość ponownego użycia , przenośność i współdziałanie .
Komponent jest komponentem JavaBean tylko wtedy, gdy jest zgodny ze specyfikacją API JavaBeans , która jest określona przez architekturę komponentów JavaBeans .
Instancja
JavaBean zawsze ma konstruktor bez parametrów (konstruktor standardowy). Umożliwia to standaryzowane tworzenie instancji, na przykład przycisk :
JButton button = (JButton) Class.forName("javax.swing.JButton").newInstance();
Alternatywą dla tej instancji jest:
JButton button = new JButton();
Dostęp do operacji
Wszystkie właściwości fasoli zachowują zasadę tajemnicy (ukrywanie informacji) . Dostęp jest możliwy za pomocą specjalnych operacji, które muszą być zgodne z określonymi konwencjami.
W przypadku właściwości foooperacja odczytu jest wywoływana (pobierająca) getFoo . W przypadku zmiennych boolowskich jest to również isFoomożliwe jako alternatywa , co jest ogólnie preferowane. Wywoływana jest operacja zapisu (ustawiająca)setFoo . Właściwości indeksowane mają dwa metody pobierające i ustawiające: jeden dla całości, jeden dla określonego indeksu. Właściwość tylko do odczytu nie ma (publicznej) metody ustawiającej.
Introspekcja
Introspekcja to mechanizm, który jest fasolą dla ich właściwości, zdarzeń (zdarzeń) do analizy i operacji. Interfejs API oferuje opcje, które sprawiają, że dodatkowe wsparcie dla introspekcji ze strony programisty fasoli jest niepotrzebne. Fasola może zostać zbadana przez refleksję, jeśli jest zgodna z konwencjami określonymi w specyfikacji .
Możliwe jest również napisanie klasy BeanInfo dla każdego ziarna, która zawiera informacje o ziarnie, jego właściwościach i operacjach. Klasa najpierw java.beans.Introspectorszuka wyraźnych informacji i uzupełnia je poprzez refleksję.
dodatkowy
Podczas zmiany powiązanej właściwości obiekty muszą zostać poinformowane o zmianie. W Constrained Properties mogą również zawetować . Interfejs API Bean zapewnia w tym celu model delegowania zdarzeń .
Dla określonych typów danych i komponentów bean można tworzyć edytory graficzne i dostosowania , a ich właściwości można łatwo dostosowywać.
W przypadku fasoli istnieje mechanizm trwałości. Na przykład ziarna można zapisać jako dokument XML .
literatura
- Olaf Zwintzscher: Przegląd komponentów oprogramowania. W3L, 2004, ISBN 3-937137-60-2
linki internetowe
- Specyfikacja API JavaBeans
- Praca dyplomowa JinBean Java GUI Builder - koncepcje i realizacja Wiele z wymienionych informacji pochodzi z tej pracy
- JavaBean . Rozdział z Jawy to także wyspa