软设之访问者模式

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

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

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

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

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

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

ObjectStructure:对象结构类

相关推荐
sheeta19982 小时前
LeetCode 每日一题笔记 日期:2026.05.08 题目:3629. 素数跳跃最小次数
笔记·算法·leetcode
lsswear3 小时前
PHP 设计模式
设计模式·php
贺一航【Niki】8 小时前
【学习笔记】杂乱知识
笔记·学习
ximu_polaris8 小时前
设计模式(C++)-行为型模式-备忘录模式
c++·设计模式·备忘录模式
つ安静与叛逆的小籹人9 小时前
小红书API:通过笔记ID获取笔记详情数据教程
笔记·python
05候补工程师9 小时前
[实战复盘] 拒绝 AI 屎山!我从设计模式中学到的“调教”AI 新范式
人工智能·python·设计模式·ai·ai编程
ClutchoQ11 小时前
【你指的API是哪个API?软件工程师跨服聊天实录】
笔记·其他
二哈赛车手13 小时前
新人笔记---Spring AI的Advisor以及其底层机制讲解(涉及源码),包含一些遇见的Spring AI的Advisor缺陷问题的解决方案
java·人工智能·spring boot·笔记·spring
sg_knight14 小时前
Python 设计模式:迭代器模式——用优雅的方式遍历一切
python·设计模式·迭代器模式
Tutankaaa15 小时前
知识竞赛软件SaaS版 vs 本地部署
人工智能·经验分享·笔记·学习