首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-2所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-8所示的类图。 [Java代
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表16-2所示。 现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图16-8所示的类图。 [Java代
admin
2017-08-31
32
问题
某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表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://kaotiyun.com/show/YODZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
在图4-8所示的无线接待室中WLAN采用的体系结构如图4-9所示,请将(1)~(3)空缺处填写完整IEEE802.11定义了无线局域网(WLAN)的两种工作模式,根据图4-8所示的网络拓朴结构可判断出该WLAN的工作模式是(4)。当前WLAN中主要使
阅读以下说明,回答问题1、问题2和问题3,将解答填入对应栏内。[说明]ADSL是运行在原有电话线上的一种高速宽带上网方式,具有节省投资、上网速度快与安装简单等优点。目前很多局域网、家庭上网,尤其是网吧都使用这种方式。接入方式如图6-1所示
简述网络规划阶段需求分析的方法和解决的问题。(控制在100个字以内)在需求分析过程中应对已有网络的现状及运行情况作调研,如果要在已有的网络上作新的网络建设规划,如何保护用户已有投资?(控制在100个字以内)
阅读以下说明,回答问题1和问题2。【说明】某学校拟组建一个小型校园网,具体设计如下:1.设计要求。(1)终端用户包括:48个校园网普通用户;一个有24个多媒体用户的电子阅览室;一个有48个用户的多媒体教室(性能要求高于电子阅
阅读以下说明,回答【问题1】~【问题4】,将解答填入空白处。【说明】某小型单位的网络图如图5所示,Cisco路由器有ISDN模块,单位通过ISDN连接Internet。ISDN是指近年来供最终用户使用的一套数字服务,包括电话网络的数字化,以便ISP
对一个大型校园网工程进行网络备份系统设计时,应考虑解决哪些主要的问题?请用150字以内的文字简要说明。备份就是对数据文件的备份,备份网络文件就是将所需要的文刊:复制到光盘、磁带或磁盘等存储介质上。这种备份网络文件的思路是否正确?请用200字以内的文字简
阅读以下交换机Switch01的部分配置信息,结合图2-8所示的网络拓扑图将(1)~(8)空缺处的内容(命令或解释)填写完整。Switch>enable(进入特权模式)S
在如图1-23所示的网络拓扑结构图中,被路由协议可以使封装后的数据包通过互连网络进行中继传输,它由(1)使用。【供选择的答案】A.PCIB.RouterA和RouterBC.Internet网D.Rcrate
随机试题
ManypeoplewhoworkinLondonprefertoliveoutsideit,andtogototheiroffices,factoriesorschoolseverydaybytrain,c
女性,65岁,右膝疼痛,活动受限3年,加重2个月。查体:体温正常,跛行,右膝关节活动明显受限,关节周围组织肿胀,血沉18mm/h。对该病人首先应该作的检查是
有关SARS病原学检查错误的是()
放射性131I治疗甲状腺功能亢进症最主要的并发症是
何谓诉讼担当?其主要有几种类型?(武汉大学2007年考研真题)
下列证券投资基金中在我国尚未正式推出的是()。
国有独资公司董事会行使股东会的部分职权,决定公司的重大事项,如公司的合并、分立、解散、增减资本和发行公司债券。( )
根据现行税法规定,下列消费品既征收增值税又征收消费税的有()。
在以下所列的条目中,哪些是数据库管理员(DBA)的职责?Ⅰ.负责管理企业的数据库资源Ⅱ.收集和确定有关用户的需求Ⅲ.设计和实现数据库并按需要修改和转换数据,Ⅳ.为用户提供资料和培训方面的帮助
微处理器8086CPU向应可屏蔽中断的条件之一是()。
最新回复
(
0
)