软设之访问者模式

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

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

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

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

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

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

ObjectStructure:对象结构类

相关推荐
影林握雪34 分钟前
M|哪吒之魔童闹海
经验分享·笔记·其他·生活
Lorcian3 小时前
web前端12--表单和表格
前端·css·笔记·html5·visual studio code
想拿高薪的韭菜7 小时前
人工智能第2章-知识点与学习笔记
人工智能·笔记·学习
一只码代码的章鱼8 小时前
计算机网络 应用层 笔记 (电子邮件系统,SMTP,POP3,MIME,IMAP,万维网,HTTP,html)
笔记·计算机网络·microsoft
学游戏开发的9 小时前
UE求职Demo开发日志#19 给物品找图标,实现装备增加属性,背包栏UI显示装备
c++·笔记·游戏引擎·unreal engine
云缘若仙9 小时前
directx12 3d+vs2022游戏开发第三章 笔记五 变换
笔记·3d
前端达人10 小时前
「AI学习笔记」深度学习进化史:从神经网络到“黑箱技术”(三)
人工智能·笔记·深度学习·神经网络·学习
wdxylb13 小时前
GIt使用笔记大全
笔记·git·elasticsearch
一只码代码的章鱼13 小时前
计算机网络 应用层 笔记1(C/S模型,P2P模型,FTP协议)
笔记·计算机网络
霸王蟹14 小时前
el-table组件样式如何二次修改?
前端·javascript·vue.js·笔记·学习·前端框架