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) |