Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
java1_2013_2014 / java9.pptx
Скачиваний:
167
Добавлен:
16.04.2015
Размер:
124.79 Кб
Скачать

Пример: связываемое свойство с ограничениями ( 3 / 4 )

public void addPropertyChangeListener (PropertyChangeListeger x)

{ // регистрация нового слушателя изменений changes.addPropertyChangeListener(x);

}

public void removePropertyChangeListener (PropertyChangeListener x)

{// отмена регистрации слушателя изменений changes.removePropertyChangeListener(x);

}

public void addVetoableChangeListener (VetoableChangeListeger x)

{ // регистрация нового контролера изменений vetos.addVetoableChangeListener (x);

}

(C) В.О. Сафонов. 2013

Пример: связываемое свойство с ограничениями ( 4 / 4 )

public void removeVetoableChangeListener (VetoableChangeListener x)

{// отмена регистрации слушателя изменений vetos.removeVetoableChangeListener(x);

}

} // BudgetBean

public class BudgetListener implements PropertyChangeListener { public void propertyChange(PropertyChangeEvent e) { … }

} // BudgetListener

public class BudgetBoss implements VetoableChangeListener { public static final int MAXBUDGET = 10000;

public void vetoableChange (PropertyChangeEvent e) throws

PropertyVetoException {

 

if (((Integer) e.getNewValue()).intValue() > MAXBUDGET)

throw new PropertyVetoException(“budget too big!”, e);

}} // BudgetBoss

(C) В.О. Сафонов. 2013

 

Java Beans: спецификация, настройка, редактирование свойств и анализ

Явная спецификация Java bean – в виде класса, реализующего интерфейс java.beans.BeanInfo

Customizer – класс для настройки Java bean (с помощью GUI). Должен реализовывать интерфейс java.beans.Customizer

Редактор свойств (property editor) – класс, обеспечивающий редактирование и визуализацию любого свойства Java bean; реализует интерфейс java.beans.PropertyEditor

Два режима поведения Java bean: режим проектирования (design time) и режим исполнения (runtime). Управляются с помощью свойства DesignTime, определенного в интерфейсе DesignMode, который реализуется в классах-контейнерах для разработки Java Beans – производных от java.beans.beancontext.BeanContext

Интроспекция (introspection) – анализ Java Beans, выполняемый инструментом построения Java-приложений, как правило, с помощью класса java.beans.Introspector.

Реализация интроспекции основана на reflection API.

Более подробно см. http://java.sun.com/beans/docs/index.html

JavaBeans Activation Framework – JAF (2006)

(C)В.О. Сафонов. 2013

Q&A

Вопросы?

(C) В.О. Сафонов. 2013

Соседние файлы в папке java1_2013_2014