信管网试题内容
信管网 导航

试卷名称:2015年下半年软件设计师考试下午真题试题(案例分析)

考试年份:2015年下半年

试题来源:《2015年下半年软件设计师考试下午真题试题(案例分析)》在线考试

试题内容

阅读下列说明和Java代码,将应填入 (n)  处的字句写在答题纸的对应栏内。
【说明】
某大型购物中心欲开发一套收银软件,要求其能够支持购物中心在不同时期推出的各种促销活动,如打折、返利(例如,满300返100)等等。现采用策略(Strategy)模式实现该要求,得到如图6-1所示的类图。

图6-1 策略模式类图
【Java代码】
import java.util.*;
enum TYPE { NORMAL, CASH_DISCOUNT, CASH_RETURN};
interface CashSuper {
public   (1)  ;
}
class CashNormal implements CashSuper{    // 正常收费子类
public double accptCash(double money){
return money;
}
}
class CashDiscount implements CashSuper {
private double moneyDiscount;                   // 折扣率
public CashDiscount(double moneyDiscount) {
this moneyDiscount = moneyDiscount;
}
public double acceptCash(double money) {
return money* moneyDiscount;
}
}
class CashReturn implements CashSuper {               // 满额返利
private double moneyCondition;
private double moneyReturn;
public CashReturn(double moneyCondition, double moneyReturn) {
this.moneyCondition =moneyCondition;     // 满额数额
this.moneyReturn =moneyReturn;           // 返利数额
}
public double acceptCash(double money) {
double result = money;
if(money >= moneyCondition )
result=money-Math.floor(money/moneyCondition ) * moneyReturn;
return result;
}
}
class CashContext_{
private CashSuper cs;
private TYPE  t;
public CashContext(TYPE t)  {
switch(t){
case NORMAL:    // 正常收费
(2) ;
break;
case CASH_DISCOUNT:       // 打8折
(3) ;
break;
case CASH_RETURN:     // 满300返100
(4) ;
break;
}
}
public double GetResult(double money) {
(5)   ;
}
//此处略去main()函数
}
参考答案:暂时没有答案(仅供参考) 收藏

【解析】

普通会员无法查看试题解析。[开通试题解析服务]