设计模式——行为型模式
一、观察者模式
提供一对多的依赖关系,当一个对象发生改变时,通知其他依赖的对象发生变化。
二、模板方法模式
算法通用的骨架(结构)放在抽象类中,算法具体的实现可以在子类中更改。
三、命令模式
请求封装成对象,这样可以对请求进行记录、撤销,也可以用不同的请求对客户参数化。
四、状态模式
行为随状态不同而发生变化,看似修改了类。
五、责任链模式
多个对象都有机会处理请求,可以避免请求者和接受者之间过度耦合,多个对象之间依次依赖,请求依次传递,直到有对象可以处理。
六、解释器模式
给定一种语言,定义他的文法的表示,解释器使用该表示来解释。
七、中介者模式
降低多个类、对象之间通信的复杂性,松耦合,迪米特原则。
八、访问者模式
算法随访问者变化而变化,增加新的访问者,即可在一个对象结构上定义新的操作。
九、策略模式
算法封装起来,与客户之间独立。
十、备忘录模式
保存一个对象的状态,在需要的时候恢复。
十一、迭代器模式
遍历聚合对象中的每个元素,又不暴露对象的信息。