三大设计模式类型——行为型设计模式

三、行为型设计模式

模版方法模式、策略模式、命令模式、观察者模式、中介者模式常用,迭代器模式和解释器模式少用

1)模版方法(Template Method)

定义:在一个方法中定义一个,而将一些步骤延迟到子类中。模版方法可以使得子类在不改变算法结构的情况下,重新定义算法中的某些步骤


2)策略模式(Strategy)

定义:定义了算法族,分别封装起来,使它们可以互相替换,此模式使算法的变化独立于使用算法的客户


3)命令模式(Command)

定义:将“请求”封装成命令对象,以便使用不同的请求、队列或日志来参数化其它对象


4)责任链模式(Chain)

定义:当想要让一个以上的对象有概率处理某些请求的时候,就使用责任链模式。将这些对象连成一条链,并沿着这条链传递请求,直到有对象处理为止


5)状态模式(State)

定义:允许对象在内部状态修改时改变它的行为,对象看起来好像修改了它的类


6)观察者模式(Observer)

定义:     定义了对象之间一对多的关系,这样一来当对象状态改变时,它的所有依赖者都会收到通知并且自动更新


7)中介者模式(Mediator)

定义:使用中介者模式来集中对象之间复杂的沟通和控制方式


Ps:中介者模式通过中介对象管理其他对象的复杂关系,保证其他对象的单一职责性

8)迭代器模式(Iterator)

定义:定义一个方法,顺序访问一个聚合对象中的各个元素,而不暴露其内部的表示


9)访问者模式(Visitor)

定义:表示一个作用于某个对象结构中各个元素的操作,可以使我们在不改变各个元素类的前提下定义作用于这些元素的新操作


10)备忘录模式(Memento)

定义:在不破坏封装性的前提下,获取一个对象的内部状态,并将其状态保存至对象之外。这样就可以将对象还原至之前的状态


你可能感兴趣的:(三大设计模式类型——行为型设计模式)