首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
购物车设计:顾客在超市中将选择的商品,如苹果、图书等放在购物
[单选题]
购物车设计:顾客在超市中将选择的商品,如苹果、图书等放在购物车中,然后到收银员处付款。在购物过程中,顾客需要对这些商品进行访问,以便确认这些商品的质量,之后收银员计算价格时也需要访问购物车内顾客所选择的商品。购物车设计可以使用()来设计该购物过程。
工厂方法模式
访问者模式
模板方法模式
责任链
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(92)
分享
5个回答
添加回答
13
Yad
访问者模式使得用户可以在不修改现有系统的情况下扩展系统的功能,为这些不同类型的元素增加新的操作。
顾客与收银员均为访问者,购物车里面的商品就是被访问元素。
顾客对商品的操作就是确认商品质量,收银员对商品的操作就是计算商品总价格。还可以增加其他的操作来访问这些商品,进行新的操作。
发表于 2022-03-05 12:31:12
回复(0)
2
牛客46643778号
题干都提到访问了,一猜就知道是访问者模式。
发表于 2023-11-29 10:32:23
回复(0)
2
么么么么么么么么么么么
在访问者模式(Visitor Pattern)中,我们使用了一个访问者类,它改变了元素类的执行算法。通过这种方式,元素的执行算法可以随着访问者改变而改变。这种类型的设计模式属于行为型模式。根据模式,元素对象已接受访问者对象,这样访问者对象就可以处理元素对象上的操作。
发表于 2021-10-18 15:55:58
回复(0)
1
会飞的馒头
访问者模式是数据与数据算法分开的方式,顾客和收银员可以代表两种算法对同一数据类型的处理。
发表于 2024-08-25 16:06:45
回复(0)
1
牛客650959626号
访问者模式是数据结构和数据处理分开。
传统是定义一个数据结构类,并将对数据元素的操作写到这个类中。本题中两个访问者对商品这个数据都有不同的处理(方法),如果用传统方法将会变得很臃肿难以维护。
使用访问者模式:单独定义一个访问者类,去完成对数据的处理。
发表于 2024-08-07 11:20:43
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
设计模式
上传者:
小小
难度:
5条回答
92收藏
1097浏览
热门推荐
相关试题
对象间存在一对多关系,当一个对象被...
京东
安卓工程师
2019
设计模式
评论
(3)
在大语言模型中,什么是"Gated...
大模型开发
评论
(1)
下面关于 Java 中的异常处理说...
Java
评论
(1)
关于大模型“上下文窗口”的理解,以...
大模型概念
评论
(1)
Vue Router的全局前置守卫...
Vue
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题