zoukankan      html  css  js  c++  java
  • [Design] Visitor Pattern

      行为模式主要是责任和算法的抽象化。行为模式不仅仅是关于类和对象的,而且是关于它们之间的相互作用的。
      行为模式分为类的行为模式和对象的行为模式两种。
    类的行为模式
        类的行为模式使用继承关系在几个类之间分配行为。
    对象的行为模式
        对象的行为模式则使用对象的聚合来分配行为。
    --------------------------------------------------------
    访问者模式

    访问者模式是对象的行为模式。目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保有持不变。

    访问者模式适用于数据结构相对未定的系统,它把数据结构和作用于结构上的操作之间的耦合解脱开,使得操作集合可以相对自由地演化。

     

    结构及角色

    • 1、抽象访问者(Visitor)角色

    声明一个或多个访问操作,形成所有的具体元素角色必须实现的接口。

    • 2、具体访问者(Concrete Visitor)角色

    实现抽象访问者角色所声明的接口,也就是抽象访问者所声明的各个访问操作。

    •   3、抽象节点(Node)角色

    声明一个接受操作,接受一个访问者对象作为一个参量。

    • 4、具体节点(Concrete Node)角色

    实现了抽象节点角色所规定的接受操作。

    • 5、结构对象(Object Structure)角色

    可以遍历结构中的所有元素;如果需要,提供一个高层次的接口访问者对象可以访问每一个元素;如果需要,可以设计成一个复合对象或者一个聚集。

  • 相关阅读:
    每日一博文
    用flash builder创建手机项目以及发布app需要注意的细节
    用xml配置加载cs中为ActionScript导出的类
    cs里面层,帧的处理方法
    一个项目要被自己加载的swf的项目调用方法
    App调用Android设备本地相机拍照并保存到本地相册
    让SWF文件从原始保存位置拿出来到任意位置都可以播放的设置
    记事
    一个主项目调用被加载的小游戏SWF项目的方法
    从一个App退出,关闭app
  • 原文地址:https://www.cnblogs.com/abeen/p/1441904.html
Copyright © 2011-2022 走看看