软设之访问者模式

设计模式中访问者模式的意图是:

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

举个例子,比如说有个游客想去几个景点,去每个景点都想按统一的流程。但是每个景点都有各自不同的展示和流程,不可能单独为了这个游客改。这个游客就自己设定一套流程,每个景点对接,这样景点就不用修改了。

Visitor:抽象访问者,为对象结构类中每一个ConcreteElement的类声明一个Visit操作。

ConcreteVisitor:具体访问者,实现每个由Visitor声明的操作

Element:元素,定义一个Accept操作,它以一个访问者为参数

ObjectStructure:对象结构类

相关推荐
动词ing1 小时前
【学习笔记】数据结构栈与队列(栈先进后出+队列先进先出+括号匹配+消消乐模型)
数据结构·笔记·学习
彧azz2 小时前
Git 入门实操实例:从安装到远程仓库全流程
大数据·笔记·git·学习·elasticsearch
YHL2 小时前
🎯 JavaScript 单例模式(Singleton Pattern)—— 从理论到实战
javascript·设计模式
David猪大卫3 小时前
【C++修炼】哈希表的实现
数据结构·c++·笔记·学习·算法·哈希算法·散列表
江湖人称菠萝包4 小时前
【Windows】《深入浅出Windows API程序设计:核心编程篇》笔记-Chapter6-动态链接库
windows·笔记
2401_868534784 小时前
网络环境规划核心考点全梳理
网络·设计模式
宵时待雨4 小时前
linux笔记归纳18:传输层协议TCP
linux·网络·笔记·网络协议·tcp/ip
逆境不可逃4 小时前
Pi Agent 学习笔记:一次提问背后的工具调用循环
java·笔记·学习
Ztt6666666665 小时前
紫釉高筒壶向上收紧,修长器身更显精神
经验分享·笔记·其他·百度·微信公众平台
疯狂打码的少年5 小时前
【计算机网络】UDP协议与TCP/UDP对比(面向连接vs无连接)
笔记·tcp/ip·计算机网络·udp