JavaBeans
Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2013. március 12-én áttekintett
verziótól ; az ellenőrzések 14 szerkesztést igényelnek .
Nem tévesztendő össze az
Enterprise JavaBeans -szel .
A JavaBeans olyan osztályok a Java nyelvben , amelyek bizonyos szabályok szerint íródnak. Több objektum egyesítésére szolgálnak ( angol. bab - bab, kávébab) az egyszerű adatátvitel érdekében. [egy]
A Sun Microsystems specifikációja a JavaBeans-et újrafelhasználható szoftverkomponensekként határozza meg, amelyek grafikus tervezőkkel és IDE -eszközökkel kezelhetők .
A JavaBeans alapot biztosít az újrafelhasználható, beágyazható és moduláris szoftverkomponensekhez . A JavaBeannek számos formája lehet, de leggyakrabban grafikus felhasználói felület (GUI) elemeiben használják őket . A JavaBeans létrehozásának egyik célja a hasonló komponensstruktúrákkal való interakció . Például egy Windows-program a megfelelő híd vagy burkoló objektum birtokában úgy használhatja a JavaBeans összetevőt, mintha az egy COM vagy ActiveX összetevő lenne .
JavaBean leírási szabályok
Ahhoz , hogy egy osztály babként működjön, bizonyos metóduselnevezési, konstruktor- és viselkedési konvenciókat kell követnie. Ezek a konvenciók lehetővé teszik a JavaBeans használatát, helyettesítését és összekapcsolását lehetővé tevő eszközök létrehozását.
A leírás szabályai a következők:
- Az osztálynak rendelkeznie kell egy paraméter nélküli konstruktorral , hozzáférés módosítóval public. Egy ilyen konstruktor lehetővé teszi az eszközök számára, hogy objektumot hozzanak létre a paraméterek további bonyolultsága nélkül.
- Az osztálytulajdonságoknak elérhetőnek kell lenniük a get, setés más metódusokkal (úgynevezett accessor metódusokkal ), amelyeknek követniük kell a szabványos elnevezési konvenciót. Ez könnyen lehetővé teszi az eszközök számára, hogy automatikusan észleljék és frissítsék a babtartalmat. Sok eszköznek még speciális szerkesztője is van a különböző típusú tulajdonságokhoz.
- Az osztálynak szerializálhatónak kell lennie . Ez lehetővé teszi a komponens állapot megbízható mentését, tárolását és visszaállítását platform- és virtuálisgép-független módon.
- Az osztályban felül kell írni az equals(), hashCode() és toString() metódusokat.
Mivel a követelményeket többnyire konvencióként, nem pedig interfészként fejezik ki , egyes fejlesztők a JavaBeans-et egyszerű régi Java objektumoknak tekintik , amelyek bizonyos elnevezési konvenciókat követnek.
Példák
// PersonBean.java
public class PersonBean implementálja a javat . io . Sorozatozható {
privát karakterláncnév ; _
magán boolean elhunyt ;
public PersonBean () {
}
// Metódusok getters (get) és setters (set)
public String getName () {
név visszaadása ;
}
public void setName ( Karakterlánc neve ) {
ezt . név = név ;
}
public logikai getDeceased () {
elhunyt visszatérése ;
}
public void setDeceased ( boolean deceased ) {
ezt . deceased = elhunyt ;
}
//A felülbírált equals() és hashCode() metódusok
@Felülbírálás
public logikai egyenlő ( Object o ) {
if ( ez == o ) {
return true ;
}
if ( o == null || getClass () != o . getClass ()) {
return false ;
}
PersonBean that = ( PersonBean ) o ;
if ( deceased != that . deceased ) {
return false ;
}
vissza ! ( név != null ? ! név . egyenlő ( that . name ) : that . name != null );
}
@Felülbírálás
public int hashCode () {
int eredmény = név != null ? név . hashCode ( ) : 0
eredmény = 31 * eredmény + ( elhunyt ? 1 : 0 );
eredmény visszaadása ;
}
//Felülbírálva a toString() metódus
@Felülbírálás
public String toString () {
return "PersonBean{" +
"name='" + név + '\'' +
", deceased=" + elhunyt +
'}' ;
}
}
// TestPersonBean.java
public class TestPersonBean {
public static void main ( String [ ] args ) {
PersonBean személy = új PersonBean ();
személy . setName ( "Bob" );
személy . setDeceased ( igaz );
// Eredmény: "Bob [elhunyt]"
Rendszer . ki . print ( person.getName ( ) );
Rendszer . ki . println ( személy . getDeceased () ? " [elhunyt]" : " [élő]" );
}
}
Jegyzetek
- ↑ A JavaBeans specifikáció ? . www.oracle.com . Letöltve: 2021. március 31. Az eredetiből archiválva : 2021. április 16. (határozatlan)