摘要:简介 策略模式(Strategy Pattern)定义一系列的类,每个类封装一个算法,并且使它们之间可以相互转换,这些封装了算法的类可以称为策略。为保证这些策略在使用时具有一致性,一般会提供一个抽象策略类来制定规则,而每种策略对应一个具体策略类。 策略模式的角色 抽象策略(Strategy)类:它为
阅读全文
摘要:简介 责任链模式(Chain Of Responsibility Pattern)允许沿着处理者链进行发送,避免请求者与发送者耦合在一起,每个处理者在收到请求后选择处理或者传递给下一个处理者,让多个对象都有接收到请求的可能性,这些对象形成链式结构,并且沿着这条链路传递请求,直至有对象处理请求。值得注
阅读全文
摘要:简介 备忘录模式(Memento Pattern)是一种行为型设计模式,它允许在不破坏封装性的前提下,捕获并保存对象的内部状态,以便在对象需要时,恢复到之前的状态。 备忘录模式的角色 发起人(Originator)类:负责创建一个备忘录对象,用以记录当前时刻自身的内部状态,并且可以使用备忘录对象恢复
阅读全文
摘要:简介 命令模式(Command Pattern)是一种行为型模式,它将请求封装成一个对象,从而你可以用不同的请求将客户参数化,对请求排队或记录请求日志,以及支持可撤销操作。 命令模式的角色 抽象命令(Command)接口:定义抽象命令接口,通常包含一个execute()方法 具体命令(Concret
阅读全文
摘要:简介 状态模式(State Pattern)是一种行为型设计模式,它允许对象在内部状态改变时改变它的行为。 状态模式的角色 环境(Context)类:定义用户所处的环境,并且维护一个状态对象,表示当前所处环境的状态 抽象状态(State)类:定义一个接口,封装与环境相关的一个特定状态的行为 具体状态
阅读全文