观察者模式 Observer Pattern 1.简介及概念**意图:****应用场景:****优缺点:****角色类:**类图 1.简介及概念 意图: 定义对象之间1对多依赖,当被依赖对象的状态改变时,所有依赖对象能自动接收到通知和更新自己。 应用场景: 当一个对象改变时,需要改变其他对象,但并不了解其他对象的数量;当一个对象应当负责通知其他对象的职责实现时,降低通知对象和被通知对象的耦合。 优缺点: 被观察对象状态的更新,可能引起观察者的级联更新。 角色类: Observer 观察者 ConcreteObserver Subject 被观察对象 ConcreteSubject 类图 ConcreteSubject -state +getState() +setState() Subject +add(Observer o) +remove(Observer o) +notify() ConcreteObserver update() Observer update() maintain维护 更新状态