Sobes.tech
Junior

Ի՞նչ է սովորական օբյեկտի և JavaBean-ի տարբերությունը։

sobes.tech AI

Պատասխան AI-ից

Տարբերությունը կայ էականորեն անվանման համաձայնությունների պահպանման մեջ (մեծատառ հետո "get/set/is") մուտքի մեթոդների համար, առանցքային կոնստրուկտորի առկայության և սերիալիզացիայի մեջ:

Սա թույլ է տալիս օգտագործել JavaBeans-ները ինտրոսպեկցիայի վրա հիմնված ֆրեյմվորկների և գործիքների հետ:

Նորմալ օբյեկտը կարող է չհետևել այս կանոններին:

public class SimpleObject {
    private String name;

    public SimpleObject(String name) { // ցանկացած կոնստրուկտոր
        this.name = name;
    }

    public String retrieveName() { // ոչ ստանդարտ get անվանում
        return name;
    }
}
import java.io.Serializable;

public class JavaBean implements Serializable { // Սերիալիզացվող
    private String name;

    public JavaBean() { // առանց args կոնստրուկտոր
    }

    public String getName() { // ստանդարտ getter անվանում
        return name;
    }

    public void setName(String name) { // ստանդարտ setter անվանում
        this.name = name;
    }
}

Հիմնական տարբերությունները՝

Քարտեզ Նորմալ օբյեկտ JavaBean
Կոնստրուկտոր առանց args պարտադիր չէ պարտադիր
մեթոդների անվանում ցանկացած get/set/is + հատկության անուն
Սերիալիզացիա պարտադիր չէ ցանկալի/պարտադիր որոշ ֆրեյմվորկների համար
Օգտագործում ընդհանուր նպատակ կոմպոնենտային մոդել, ֆրեյմվորկներ (Spring, EJB)