2022年03月03日来源:信管网 作者:cnitpm
软件设计师案例分析当天每日一练试题地址:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4
往期软件设计师每日一练试题汇总:www.cnitpm.com/class/27/e4_1.html
软件设计师案例分析每日一练试题(2022/3/2)在线测试:www.cnitpm.com/exam/ExamDayAL.aspx?t1=4&day=2022/3/2
点击查看:更多软件设计师习题与指导
软件设计师案例分析每日一练试题内容(2022/3/2)
[试题6]
阅读下列说明和Java代码,回答下列问题。
[说明]
某咖啡店卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用。咖啡店所供应的咖啡及配料的种类和价格如表2-9所示。
表2-9 咖啡及配件的种类和价格
咖啡 | 价格/杯(¥) |
| 配料 | 价格/份(¥) |
蒸馏咖啡(Espresso) | 25 |
| 摩卡(Mocha) | 10 |
深度烘焙咖啡(DarkRoast) | 20 |
| 奶泡(Whip) | 8 |
现采用装饰器(Decorator)模式来实现计算费用的功能,得到如图2-15所示的类图。
[Java代码]
import java.util.*:
______ class Beverage { //饮料
String description = "Unknown Beverage";
public ______ () { return description; }
public ______;
}
abstract class CondimentDecorator extends Beverage { //配料
______;}
class Espresso extends Beverage { //蒸馏咖啡
private final int ESPRESSO_PRICE = 25;
public Espresso() { description="Espresso"; }
public int cost() { return ESPRESSO_PRICE; }
}
class DarkRoast extends Beverage { //深度烘培咖啡
private finalint DARKROAST_PRICE = 20;
public DarkRoast() { description = "DarkRoast"; }
public int cost() { return DARKROAST PRICE; }
}
class Mocha extends CondimentDecorator { //摩卡
private final int MOCHA_PRICE = 10;
public Mocha (Beverage beverage) { this.beverage = beverage; }
public String getDescription() { returnbeverage.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 getDescription() { returnbeverage.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(______);
beverage = new Whip (______);
System.out.println(beverage.getDescription() +"¥"+beverage.cost());
}
}
编译运行上述程序,其输出结果为:DarkRoast,Mocha,Whip ¥38
信管网试题答案与解析:www.cnitpm.com/st/2479514986.html信管网考友试题答案分享:
信管网yebinghuai:
<br /><img src="http://pic.cnitpm.com/upload/tbimg/2022-02/1645840772.jpg" />
温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关推荐