包含要素: Vistor:抽象访问者,为每一个element元素声明一个方法 ConcreteVistor:具体访问者 Element:抽象元素...
包含要素: AbstractClass:抽象类,规定模板 ConcreteClass:具体实现类,实现模板中的具体实现步骤 示例demo:我们外...
包含要素: Context:封装对策略的调用 Strategy:抽象策略 ConcreteStrategy:具体策略 示例demo:我们现在买东...
使用场景:状态和行为比较复杂时,为了避免大量if else,可以使用状态模式。 包含要素: Context:环境类,包含一些内部状态 State...
观察者模式也被称为发布-订阅模式 包含要素: Subject:目标 Observer:观察者 ConcreteSubject:具体目标,维护观察...
使用场景:可以使系统恢复到某一特定的历史状态 包含要素: Originator:原发器,创建一个备忘录。 Memento:备忘录,用于存储Ori...
使用场景:如果一个类调用另一个类中的方法,可以通过第三方转发这个调用,在复杂系统中,使用中介者模式,可以减少对象之间的联系,降低耦合。 包含角色...
使用场景:现在集合中已经提供了迭代器,所以一般不需要自己开发。 包含角色: Iterator:抽象迭代器 ConcreteIterator:具体...
应用场景:根据规定语法进行解析(解释器模式用的比较少)。 包含要素: AbstractExpression:抽象表达式 TerminalExpr...