观察者模式:定义了一对多的依赖关系,让多个观察者对象同事监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。
UML图:

从uml图可以看出,suject和observer是相互关联,保存对方的实例。
代码如下:
主题抽象类:

主题实现类:

观察者抽象类:

观察者实现类:

测试类:

当主题状态改变的时候会通知观察者,并改变观察者状态。
观察者模式:定义了一对多的依赖关系,让多个观察者对象同事监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。
UML图:
从uml图可以看出,suject和observer是相互关联,保存对方的实例。
代码如下:
主题抽象类:
主题实现类:
观察者抽象类:
观察者实现类:
测试类:
当主题状态改变的时候会通知观察者,并改变观察者状态。
本文标题:设计模式之观察者模式
本文链接:https://www.haomeiwen.com/subject/nadiextx.html
网友评论