軟件設計師案例分析當天每日一練試題地址:www.xomuzic.com/exam/ExamDayAL.aspx?t1=4
往期軟件設計師每日一練試題匯總:www.xomuzic.com/class/27/e4_1.html
軟件設計師案例分析每日一練試題(2023/6/5)在線測試:www.xomuzic.com/exam/ExamDayAL.aspx?t1=4&day=2023/6/5
點擊查看:更多軟件設計師習題與指導
軟件設計師案例分析每日一練試題內容(2023/6/5)
試題六(共15分)
閱讀下列說明和Java代碼,將應填入 (n) 處的字句寫在答題紙的對應欄內。
【說明】
某大型購物中心欲開發(fā)一套收銀軟件,要求其能夠支持購物中心在不同時期推出的各
種促銷活動,如打折、返利(例如,滿300返1 00)等等?,F采用策略( Strategy)模式實
現該要求,得到如圖6-1所示的類圖。
【Java代碼】
import java util*;
enum TYPE { NORMAL, CASH_DISCOUNT, CASH_RETURN};
interface CashSuper {
Public (1) ;
}
class CashNormal imp lements CashSuper{ //正常收費子類
Public double accptCash(double money){
return money;
}
}
class CashDiscount implements CashSuper {
private double moneyDiscoMt; //折扣率
public CashDiscount(double moneyDiscount) {
This moneyDiscount = moneyDiscount;
}
public double acceptCash(double money) {
Return money* moneyDiscount;
}
}
class CashReturn im plements CashSuper { //滿額返利
private double moneyCondition;
private double moneyRetum;
public CashReturn(double moneyCondition, double moneyRetum) {
thismoneyCondition =moneyCondition; // 滿額數額
thismoneyReturn =moneyReturn; //返利數額
public double acceptCash(double money) {
double result = money;
if(money >= moneyCondition )
result =money -Math.floor(nioney/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: // 滿 300返 100
(3) ;
break;
case CASH_DISCOUNT: // 打八折
(4)
break;
}
}
public double GetResult(double money) {
(5) ;
}
∥此處略去main()函數
}
信管網考友試題答案分享:
信管網cnitpm475547856609:
cs=new cashnormal()
cs=new cashreturn(300,100)
cs=new cashdisCOUNT(0.8)
cs.acceptcash(money)
信管網訂閱號
信管網視頻號
信管網抖音號
溫馨提示:因考試政策、內容不斷變化與調整,信管網網站提供的以上信息僅供參考,如有異議,請以權威部門公布的內容為準!
信管網致力于為廣大信管從業(yè)人員、愛好者、大學生提供專業(yè)、高質量的課程和服務,解決其考試證書、技能提升和就業(yè)的需求。
信管網軟考課程由信管網依托10年專業(yè)軟考教研傾力打造,教材和資料參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點,為學員考試保駕護航。面授、直播&錄播,多種班型靈活學習,滿足不同學員考證需求,降低課程學習難度,使學習效果事半功倍。
發(fā)表評論 查看完整評論 | |