摘要:
模式定义 封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。 UML类图 抽象访问者(Vistor) 声明一个或多个访问抽象节点类型的抽象方法(参数为抽象节点类型),依赖抽象节点类型。 具体访问者(ConcreteElement) 实现抽象访问者角 阅读全文
摘要:
模式定义 定义一个操作中算法的骨架,而将一些步骤延迟到子类中,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 UML类图 抽象类(AbstractClass) 定义了一个或多个抽象操作(以便让子类实现)和一个调用这些方法的方法。这样就构成了一个框架。 具体类(Concret 阅读全文
摘要:
模式定义 在不破坏封装性的前提下,捕获一个对象的内部状态,并在对象之外保存这个状态。这样以后就可以将该对象恢复到原先保存的状态。 UML类图 发起人(Originator) 1. 创建一个含有当前的内部状态的备忘录对象。 2. 使用备忘录对象恢复其内部状态。 负责人(Caretaker) 1. 负责 阅读全文
摘要:
模式定义 提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。 UML类图 抽象迭代角色(Iterator) 负责定义访问和遍历元素的接口(如 下一个元素, 集合是否变量完, 当前元素等) 具体迭代角色(Concrete Iterator) 关联具体聚合角色,实现迭代器接口, 阅读全文