Sobes.tech
Junior

Care este diferența dintre un obiect obișnuit și un JavaBean?

sobes.tech AI

Răspuns de la AI

Diferența constă în respectarea convențiilor de denumire (literă mare după "get/set/is") pentru metodele de acces la proprietăți, prezența unui constructor fără argumente și serializare. Acest lucru permite utilizarea JavaBeans cu framework-uri și instrumente bazate pe introspecție.

Un obiect obișnuit poate să nu urmeze aceste reguli.

public class SimpleObject {
    private String name;

    public SimpleObject(String name) { // Orice constructor
        this.name = name;
    }

    public String retrieveName() { // Denumire non-standard de get
        return name;
    }
}
import java.io.Serializable;

public class JavaBean implements Serializable { // Serializabil
    private String name;

    public JavaBean() { // Constructor fără argumente
    }

    public String getName() { // Denumire standard de getter
        return name;
    }

    public void setName(String name) { // Denumire standard de setter
        this.name = name;
    }
}

Diferențe cheie:

Criteriu Obiect obișnuit JavaBean
Constructor fără args Nu obligatoriu Obligatoriu
Denumirea metodelor Orice get/set/is + numele proprietății
Serializare Nu obligatoriu Recomandat/Obligatoriu pentru unele framework-uri
Utilizare Scop general Model de componente, framework-uri (Spring, EJB)