首页
登录
从业资格
第五题 阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内
第五题 阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内
题库
2022-08-02
83
问题
第五题 阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内。【说明】以下Java代码实现一个超市简单销售系统中的部分功能,顾客选择图书等物件 (Item)加入购物车(ShoppingCart),到收银台(Cashier)对每个购物车中的物品统计其价格进行结账。设计如图5-1所示类图。
问题:5.1 【Java代码】interface Item{ public void accept(Visitor visitor); public double getPrice();}class Book (1){ private double price; public Book(double price){(2);} public void accept(Visitor visitor){ //访问本元素 (3); } public double getPrice() { return price; }}//其它物品类略 interface Visitor { public void visit(Book book); //其它物品的visit方法}class Cashier(4){ private double totalForCart; //访问Book类型对象的价格并累加 (5){ //假设Book类型的物品价格超过10元打8折 if(book.getPrice()<10.0){ totalForCart+=book.getPrice(); } else totalForCart+=book.getPrice()*0.8;}//其它visit方法和折扣策略类似,此处略public double getTotal() { return totalForCart; }}class ShoppingCart { //normal shopping cart stuff private java.util.ArrayList<Item>items=new java.util.ArrayList<>(); public double calculatePrice() { Cashier visitor=new Cashier(); for(Item item:items) { (6); } double total=visitor.getTotal(); return total; } public void add(Item e) { this.items.add(e); }}
选项
答案
解析
implements Item
(2)this.price=price
(3)visitor.visit(this)
(4)implements Visitor
(5)public void visit(Book book)
(6)item.accept(visitor)
【解析】
这里考察的是访问者模式。其定义如下:封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。
第一、四空为接口与实现,接口使用Interface,实现使用implements。第二空this表示类实例本身。第三空为访问本元素。第五空实现接口里面的方法。第六空调用accept方法。
转载请注明原文地址:https://tihaiku.com/congyezige/2425967.html
本试题收录于:
初级程序员题库软件水平考试初中高级分类
初级程序员
软件水平考试初中高级
相关试题推荐
网页中代码"inputtype=textname="foo"size=20
在如下所示的一段XML代码中,根元素名为()。 <?xmlversion="
在网页中创建一个如下图所示的表单控件的HTML代码是()。 A.<input
通过内部发起连接与外部主机建立联系,由外部主机控制并盗取用户信息的恶意代码为(
下列设置图像地图正确的HTML代码是()。A.<areashape="po
()不是蠕虫病毒。A.冰河 B.红色代码 C.熊猫烧香 D.爱虫病毒
阅读以下说明,回答问题1至问题4,将解答填入对应的解答栏内。 【说明】
阅读以下说明,回答问题1至问题5,将解答填入答题纸对应的解答栏内。 【说明】
阅读以下说明,回答问题1至问题2,将解答填入答题纸对应的解答栏内。 【说明】
阅读以下说明,回答问题1至问题4,将答案填入答题纸对应的解答栏内。(注:此题为思
随机试题
DothefollowingstatementsagreewiththeviewsofthewriterinReadingPassag
下列各句中加点的成语使用不正确的一项是( )A.脱离实际,凭主观想像制订实施方
某设备工程项目,业主委托某设备监理公司承担该设备工程的招标工作和全过程监理任务。
某小学开展“全面发展,学有特长”系列课外活动。其中,低、中高年级分别以“折纸编纸
在我国,负责监督管理银行间同业拆借市场和银行间债券市场的机构是( )。A.中国
我国现存最早的外科专著《刘涓子鬼遗方》的作者是A.窦梦麟 B.龚庆宣 C.邹
按照《律师事务所从事证券法律业务管理办法》规定,律师事务所及其指派的律师从事证券
商业银行各查询用户的用户名及密码除本人使用外,还可以授权他人使用。( )
当监理机构提供相关服务时,需要建立相关服务制度,下列属于项目立项阶段相关服务制度
第三代移动通信系统标准有()。A.GSM B.CDMA C.WCDMA
最新回复
(
0
)