首页
登录
从业资格
第五题 阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内
第五题 阅读以下说明和Java代码,填补代码中的空缺,将解答填入答题纸的对应栏内
题库
2022-08-02
78
问题
第五题 阅读以下说明和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,将答案填入答题纸对应的解答栏内。(注:此题为思
随机试题
TheSacrificeatMasada[A]Onediscoveryalwayslead
Hedidn’tfeelcoldthoughhewaswettotheskin.A、他不感到冷,虽然他湿透了。B、虽然他湿透了,但是他并不
[originaltext]M:WhatshouldIdoaboutMrRomero?Remember?Hesaiditwasimp
某企业于2x15年5月16日从H公司赊购一批原材料并已验收入库,增值税专用发票上
根据《建筑法》,按照国务院有关规定批准开工报告的建筑工程,因故不能按期开工超过(
患儿,女孩,7岁,全身水肿、尿少4天入院,体查:神清,双眼睑水肿明显,双下肢非凹
关于挪用公款罪的认定,下列说法中正确的是A.以个人名义将公款供其他单位使用的,属
社会主义阵营形成时,其中各国都( )A.建立了无产阶级政权 B.已建立较完备
项目决策分析与评价要求动态与静态的分析方法相结合,其中动态分析的指标包括( )。
某施工单位承建了一段山区三级公路路基工程,路段长5.27km,路基宽8.50m
最新回复
(
0
)