添加属性
前面的课程中,演示了如何添加简单的属性到Bean中,以及如何在BeanBox中进行编译和测试。本节课中,我们将来学习如何在Bean中实现其他类型的属性,这些属性包括:
这些类型更为复杂的属性需要Bean之间能够互相通信。回忆一下我们在前面所学的,Bean使用事件来相互通信。一个源Bean发送事件,而一个监听Bean,一旦在源Bean中登记了其感兴趣的事件, 就可以接受或者处理该事件。
关联属性
关联属性使得一旦JavaBean中的某个属性值发生变化时,该JavaBean能够通知到另外一个JavaBean,被通知到的JavaBean之后可以对这个改变作出响应。例如,你在一个JavaBean 中设计了一个按钮,一旦按钮被按下之后,就可以使得另外一个Bean显示一些信息。
一旦某个Bean的关联属性发生变化,就要通知到其它的Bean,这就需要有个通信机制。这个通信机制是通过事件进行的。一旦关联属性改变之后就会发送出事件。这些事件被称为属性改变事件。
一旦你设置了一个关联属性,你同时也把其他的Bean设置为对关联属性的改变感兴趣的监听者。之后,一旦第一个JavaBean的关联属性的值改变了,通知就会发送给那些以感兴趣的监听者的身份出现的Bean。
让我们首先看看名为MyButton 的Bean,该Bean使用了关联属性。MyButton中包含了一旦属性改变就通知其他感兴趣的Bean的代码。一旦我们编写好了MyButton,就可以设置一个监听Bean,以便响应MyButton中的属性的改变。