JavaBeans — классы в языке Java, написанные по определённым правилам. Они используются для объединения нескольких объектов в один (англ. bean — фасоль, кофейное зерно) для удобной передачи данных.
Спецификация Sun Microsystems определяет JavaBeans как повторно используемые программные компоненты, которыми можно управлять, используя графические конструкторы и средства IDE.
JavaBeans обеспечивают основу для многократно используемых, встраиваемых и модульных компонентов ПО. Компоненты JavaBeans могут принимать различные формы, но наиболее широко они применяются в элементах графического пользовательского интерфейса. Одна из целей создания JavaBeans — взаимодействие с похожими компонентными структурами. Например, Windows-программа, при наличии соответствующего моста или объекта-обёртки, может использовать компонент JavaBeans так, будто бы он является компонентом COM или ActiveX.
Чтобы класс мог работать как bean, он должен соответствовать определённым соглашениям об именах методов, конструкторе и поведении. Эти соглашения дают возможность создания инструментов, которые могут использовать, замещать и соединять JavaBeans.
Правила описания гласят:
public
. Такой конструктор позволяет инструментам создать объект без дополнительных сложностей с параметрами.get
, set
и другие методы (так называемые методы доступа), которые должны подчиняться стандартному соглашению об именах. Это легко позволяет инструментам автоматически определять и обновлять содержание bean’ов. Многие инструменты даже имеют специализированные редакторы для различных типов свойств.Так как требования в основном изложены в виде соглашения, а не интерфейса, некоторые разработчики рассматривают JavaBeans, как Plain Old Java Objects, которые следуют определённым правилам именования.
1 // PersonBean.java
2
3 public class PersonBean implements java.io.Serializable {
4 private String name;
5 private boolean deceased;
6
7 // Методы геттеры (get) и сеттеры (set)
8 public String getName() {
9 return name;
10 }
11 public void setName(String name) {
12 this.name = name;
13 }
14 public boolean isDeceased() {
15 return deceased;
16 }
17 public void setDeceased(boolean deceased) {
18 this.deceased = deceased;
19 }
20
21 //Переопределенные методы equals() и hashCode()
22 @Override
23 public boolean equals(Object o) {
24 if (this == o) {
25 return true;
26 }
27 if (o == null || getClass() != o.getClass()) {
28 return false;
29 }
30
31 PersonBean that = (PersonBean) o;
32
33 if (deceased != that.deceased) {
34 return false;
35 }
36 return !(name != null ? !name.equals(that.name) : that.name != null);
37
38 }
39
40 @Override
41 public int hashCode() {
42 int result = name != null ? name.hashCode() : 0;
43 result = 31 * result + (deceased ? 1 : 0);
44 return result;
45 }
46
47 //Переопределенный метод toString()
48 @Override
49 public String toString() {
50 return "PersonBean{" +
51 "name='" + name + '\'' +
52 ", deceased=" + deceased +
53 '}';
54 }
55 }
// TestPersonBean.java
public class TestPersonBean {
public static void main(String[] args) {
PersonBean person = new PersonBean();
person.setName("Bob");
person.setDeceased(true);
// Результат: "Bob [deceased]"
System.out.print(person.getName());
System.out.println(person.isDeceased() ? " [deceased]" : " [alive]");
}
}
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .