软设之访问者模式

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

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

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

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

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

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

ObjectStructure:对象结构类

相关推荐
清平乐的技术专栏几秒前
【Kafka笔记】(二)核心架构与专属名词解释
笔记·架构·kafka
清平乐的技术专栏6 分钟前
【Kafka笔记】(三)常用命令整理
笔记·分布式·kafka
Hua-Jay9 分钟前
OpenCV联合C++/Qt 学习笔记(二十四)----差值法检测移动物体、稠密光流法跟踪移动物体及稀疏光流法跟踪移动物体
c++·笔记·qt·opencv·学习·计算机视觉
清平乐的技术专栏16 分钟前
【FlinkSQL笔记】(一)什么是Flink SQL
笔记·sql·flink
半夜修仙21 分钟前
Redis中Set数据类型的常见命令
java·数据库·redis·笔记·学习
持梦远方28 分钟前
Nginx 静态资源挂载与前端部署实战笔记
linux·前端·笔记·nginx
yoona10201 小时前
Web3 基础概念笔记:理解测试网交易、合约调用、钱包确认与链上验证
笔记·web3·区块链
chushiyunen1 小时前
python使用笔记(linux环境)
linux·笔记·python
三品吉他手会点灯1 小时前
C语言学习笔记 - 41.数据类型 - scanf函数核心知识点复习
c语言·开发语言·笔记·学习
撩得Android一次心动1 小时前
C语言基础笔记3【个人用】
android·c语言·开发语言·笔记