Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
80
Добавлен:
08.06.2015
Размер:
841.73 Кб
Скачать

Достоинства JavaBeans

Компактность

Переносимость

Поддержка механизмов интроспекции

Способность к работе в графической среде быстрой разработки приложений (RAD)

11

Требования к компоненту JavaBeans

Способность к инстанцированию нового экземпляра (бин – не интерфейс, не абстрактный класс)

Наличие конструктора по умолчанию (конструктора без параметров)

Возможность сериализации

Следование соглашениям об именах и способах проектирования

Использование модели делегирования обработки событий

12

Удивительное рядом

Нет общего супер-класса для бинов

API пакета java.beans предоставляет только классы поддержки функционирования компонентов JavaBeans

Нет никакого специализированного языка описания интерфейсов

13

Свойства

Виды свойств по способу доступа

Допускающие записьДопускающие чтение

Виды свойств по сложности

ПростыеИндексированныеСвязанныеКонтролируемые

14

Простые свойства

Доступны пользователю как пара методов доступа (setter/getter)

Любой из этих методов может отсутствовать, определяя таким образом доступность свойства для чтения/записи (read-only/write-only)

Соглашения именования:

Общий вид

public ТипСвойства getИмяСвойства()

public void setИмяСвойства(ТипСвойства значение)

Логические свойства

public boolean isИмяСвойства()

public void setИмяСвойства(boolean значение)

15

Бин с простым свойством

package beans;

public class MyBean implements java.io.Serializable {

private String message;

public MyBean() {

}

public String getMessage() { return message;

}

public void setMessage(String message) {

this.message = message;

}

}

16

Работа с простыми свойствами

17

Индексированные свойства

Определяют доступ к массиву свойств с возможностью доступа по номеру

Соглашения именования:

public ТипСвойства[] getИмяСвойства()

public void setИмяСвойства (ТипСвойства[] значения)

public ТипСвойства getИмяСвойства

(int индекс)

public void setИмяСвойства

(int индекс, ТипСвойства значение)

18

Бин с индексированным свойством

public class MyBean implements java.io.Serializable { private String[] lines = new String[5];

public String[] getLines() { return lines;

}

public void setLines(String[] lines) { this.lines = lines;

}

public String getLines(int index) { return lines[index];

}

public void setLines(int index, String line) { this.lines[index] = line;

}

}

19

Работа с индексированными свойствами

20