首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-2所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-8所示的类图。 [Java代
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-2所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-8所示的类图。 [Java代
admin
2017-08-31
63
问题
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-2所示。
现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-8所示的类图。
[Java代码]
import java util.*:
(1) class Beverage{ //饮料
String description=“Unknown Beverage”;
public (2) () {return description;)
public (3) ;
}
abstract clas s CondimentDecorator extends Beverage{ //配料
(4);
};
class Espresso extends Beverage{ //蒸馏咖啡
private final int ESPRESSO PRICE=2 5;
publ ic Espres s 0() { description=”Espres so”;}
public int cost(){return ESPRESSO PRICE;}
}
clas s DarkRoast extends Beverage{ //深度烘焙咖啡
private finalint DARKROAST—PRICE=2 0 ;
public DarkRoast0 { description= “DarkRoast”; }
public int cost()f rcturn DARKROAST PRICE; )
}
clas s Mocha extends CondimentDecorator {//摩卡
private final int MOCHA—PRICE=10;
publ ic Mocha(Beverage beverage) {
this.beverage=beverage;
}
public String getDescription() {
return beverage.getDescriptiOn0 + “, Mocha”;
}
public int cost(){
return MOCHA PRICE+beverage.cost();
}
}
class Whip extends condimentDecorator { //奶泡
private finalint WHIP—PRICE=8;
public Whip(Beverage beverage){this.beverage=beverage;}
public String getDescripti。n() {
return beverage.getDescription()+“, Whip”;
}
public int cost(){return WHIP—PRICE+beverage.cost();}
}
public class Coffee{
public static void main(String args[]){
Beverage beverage=new DarkRoast();
beverage=new Mocha (5);
beverage=new Whip(6);
System.out.println(beverage.getDescription0+“¥”+beverage.cost());
}
}
编译运行上述程序,其输出结果为:
DarkRoast, Mocha, Whip¥38
选项
答案
(1)abstract (2)String getDescription (3)abstract int cost() (4)Beverage beverage (5)beverage (6)beverage
解析
本题考查了Java语言的应用能力和装饰设计模式的应用。
第(1)空很明显,是要给类Beverage前添加定义的关键字,从整个程序来看,应该要将类Beverage定义为抽象类,需要在前面添加关键字abstract,因此第(1)空的答案为abstract。
第(2)空处也很明显,是要给出一个函数的定义,并且该函数的函数体是“returndescription;”,从子类奶泡和摩卡中我们不难发现这个函数应该是getDescription,而该函数的返回类型String,因此本空的答案为String getDescription。
第(3)空需要结合后面各子类才能发现,在Beverage中还应该定义一个函数cost,而这个函数在Beverage中并没有实现,因此要定义为抽象函数,所以第(3)空的答案为abstract int cost()=0。
第(4)空在类CondimentDecorator中,且是该类唯一的一条语句,而他的子类分别是奶泡和摩卡,在奶泡和摩卡这两个类中,都用到了Beverage beverage,而在使用之前并没有说明,因此这就可以判定,Beverage beverage是在父类CondimentDecorator中定义的,子类直接继承使用,因此第(4)空的答案为Beverage beverage。
第(5)和第(6)空在主函数当中,其中第(5)空是要创建一个Mocha对象,应该调用的是类Mocha的构造函数。从类Mocha中,可以看出,其构造函数Mocha的参数是一个Beverage类型的对象引用,而在主函数中,开始就定义了一个Beverage类型的对象引用beverage,因此这里只需填写beverage即可。同理第(6)空的答案也是beverage。
转载请注明原文地址:https://www.kaotiyun.com/show/YODZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
请指出图1-12中(1)空缺处传输的是模拟信号,还是数字信号?为保证内部网络的安全保密性,在如图1-12所示的网络拓扑图中,(6)空缺处应选用什么设备?如果将该设备放置在路由器Router和设备(2)之间,整个网络的安全级别是否会提高?请用150字以内
下面是Web页面处理中3个步骤,请将其进行正确排序。①Web服务器接收到Web页面请求后,寻找所请求的Web页面,并将所请求的Web页面传送给Web浏览器。②Web浏览器接收到所请求的Web页面,并将它显示出来。③Web浏览器向一个
简述网络规划阶段需求分析的方法和解决的问题。(控制在100个字以内)在需求分析过程中应对已有网络的现状及运行情况作调研,如果要在已有的网络上作新的网络建设规划,如何保护用户已有投资?(控制在100个字以内)
在Internet上捕获并分析图8-16所示的网络中两个内部网络经由Internet通信的L2TPv2数据帧,请从以下4个选项中选择正确的答案填写到图8-17的(1)~(4)空缺处的相应位置。【供选择的答案】A.L2TPv2头
阅读以下应用L2TPv2协议实现VPN安全接入的技术说明,根据要求回答问题1至问题5。【说明】某企业应用L2TPv2协议部署企业的虚拟专用网(VPN),以方便企业的VIP用户及出差员工通过公共Internet安全地访问企业内部LAN资源,其网络拓
SSL是一个协议独立的加密方案,在网络信息分组的应用层和传输层之间提供了安全的通道。SSL主要包括SSL修改密文协议、SSL握手协议、SSL告警协议、SSL记录协议等,其协议栈见图7-16。请根据SSL协议栈结构,将(1)~(4)处空缺的协议名称填写完整。
如果在网络设计过程中划分了很多VLAN,则可采用VTP来简化其管理。交换机管理IP地址只能创建在(1)中,而VTP信息只能在(2)端口上传播。共享相同VLAN数据库的交换机构成一个(3)。不同交换机平台、不同的IOS版本支持的VLAN数量不同,从图6-18
请说出图9-1的拓扑结构名称与特点。PC2、PC4与PCI、PC3、PC5要连网且能相互访问,需要增添什么设备?
在如图1-23所示的网络拓扑结构图中,被路由协议可以使封装后的数据包通过互连网络进行中继传输,它由(1)使用。【供选择的答案】A.PCIB.RouterA和RouterBC.Internet网D.Rcrate
从图7-1中可以看出采用什么拓扑结构与设计方法?在“电视模块”中一般采用75欧的CATV电缆传输模拟信号,如果在“电脑模块”中也要采用75欧的CATV电缆传输信号,该怎么实现?
随机试题
关于输尿管结石的超声诊断,不正确的是
甲国暴发某种恶性传染病。甲国驻乙国大使的官邸据报发现疑似患者。乙国卫生防疫人员为此赶到该官邸外做好处理患者的准备工作。甲乙两国均为《维也纳外交关系公约》的缔约国,且没有其他的相关协定。依公约的规定,下列哪项是正确的?()
某项目期初投资额为2000万元,从第一年末开始每年净收益480万元。若基准收益率为10%,并已知(P/A,10%,5)=3.7908和(P/A,10%,6)=4.3553,则该项目的静态投资回收期和动态投资回收期分别为()年。
()是用于控制灭火剂的流速和喷射方向的组件,是气体灭火系统的一个关键部件。
具有从事期货业务10年以上经验或者曾担任金融机构部门负责人以上职务()年以上的人员,申请期货公司董事长、监事会主席、高级管理人员任职资格的,学历可以放宽至大学专科。
下述关于可行域的描述哪些是正确的?( )
下列哪一项不属于丽水市的历史文化遗产?()
下列关于物理常识说法错误的是()。
根据行为目标和测量的内容,测量可分为四种,其中不包括()
关于生产、销售伪劣商品罪,下列哪些判决是正确的?()
最新回复
(
0
)