zoukankan      html  css  js  c++  java
  • 设计模式学习每日一记(22.访问者模式)

    访问者模式

    A.定义:

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

    B.定义分析:

    "表示一个作用于某对象结构中各元素的操作。它使你可以在不改变对象类的前提下定义作用于这些元素的新操作。" 对象结构,即一个对象,这个对象中包含了一些数据,对应这些数据会有一些操作接口,get、set之类的。

     "表示一个作用于某对象结构中各元素的操作它使你可以在不改变对象类的前提下定义作用于这些元素的新操作。" 原本这些操作应该聚合到类中的,但是某种情况下(当你觉得不适当或者不舒服的时候),需要把这些操作接口提到外部类,这就实现了不改变类,而可以灵活改变类元素的操作接口,因为在外部。

    C.文体

    (1)与装饰者模式的区别?

    装饰者模式也是不改变类,增加功能;但是是针对某个接口的装饰作用;访问者模式把作用于元素的操作(这些操作本属于本类)提到外部类中。

    (2) 与叠代器模式的区别?

    叠代器模式侧重聚合对象的内部元素的访问方法;而访问者模式侧重对对象接口中元素的操作已经增加新的操作的灵活性。 

  • 相关阅读:
    POJ 1094 (传递闭包 + 拓扑排序)
    POJ 2594 (传递闭包 + 最小路径覆盖)
    POJ 3041 Asteroids(二分图最大匹配)
    差分数组原理与其前缀和的应用
    树状数组的理解以及简单应用
    HDU 4635 (完全图 和 有向图缩点)
    2.基本数据类型
    Python基础
    数据库类型
    Vue-2
  • 原文地址:https://www.cnblogs.com/linucos/p/2231134.html
Copyright © 2011-2022 走看看