JDK中的设计模式之观察者模式
今天我们来学习下JDK中实现观察者模式的接口和类.
在观察者模式中,有观察者和被观察者两种角色。(有些也称为发布者和订阅者角色等。。)
观察者可以通过注册方式加入到被观察者之内(通常用一个容器实现),
当某种变化发生时,被观察者可以通知所有加入到该容器的观察者。
GOF是这样定义观察者模式(Observer pattern):
好,下面进入主题。在java.util包中有两个文件,一个是接口Observer.java,另外一个是Observable.java实现类.
看下源代码:
Observer.java:
您好,李四来自书店的消息:三国演义您好,小红来自书店的消息:三国演义您好,张三来自书店的消息:三国演义
细心的同学注意到书店进了三国演义和红楼梦,为什么输出中没有向客户通知红楼梦到了呢?这个留给读者思考下。。。
^ ^
Over...