天堂888-欧美黄色小说-熟睡侵犯の奶水授乳在线-初尝情欲h名器av-亚洲天堂免费视频-日韩五十路-免费在线国产-国产又大又黄又粗-久草导航-色播导航-亚洲免费资源-熟女一区二区三区视频-亚洲美女视频在线-亚洲成人福利视频-婷婷精品在线-亚洲综合p-中文字幕 日本-亚洲骚片-亚洲自拍偷拍网-国产农村妇女精品一区二区-午夜中出-久久精品国产精品亚洲毛片-91精品毛片-99爱视频在线-狠狠操亚洲-美女让人操-里番本子纯肉侵犯肉全彩无码-999偷拍

2019上半年軟考程序員下午真題(五)

程序員 責任編輯:胡媛 2019-05-29

添加老師微信

備考咨詢

加我微信

摘要:希賽網軟考頻道小編為大家整理了2019上半年軟考程序員下午真題第五部分,供大家參考。

5、閱讀以下說明和Java代碼,將應填入(n)處的字句寫在答題紙的對應欄內。

【說明】

現如今線下支付系統可以使用現金(Cash)、移動支付、銀行卡(Card)(信用卡 (CreditCard)和儲蓄卡(DebitCard))等多種支付方式(PaymentMethod)對物品(Item)賬單(Bill)進行支付。圖5-1是某支付系統的簡略類圖。

1.jpg

問題內容:

【Java代碼】

Import java.util. ArrayList;

import java.util.List;

interface PaymentMethod {

public      (1)       ;

}

// Cash、DebitCard和Item實現略,Item中getPrice( )獲取當前物品對象的價格

abstract class Card       (2)      {

private final String name, num;

public Card(String name, String num) {this.name = name; this.num = num; }

@Oveiride

public String toString ( ) {

return String.format(“%s card[name = %s, num = %s]”,this.getType (), name, num);

}

@Override

public void pay(int cents) {

System.out.println(“Payed " + cents + “ cents using “ + toString( ));

this.executeTransaction(cents);

}

protected abstract String getType( );

protected abstract void executeTransaction(int cents);

}

class CreditCard       (3)      {

public CreditCard(String name, String num) {     (4)       ; }

@Override

protected String getType( ) { return "CREDIT"; }

@Override

protected void executeTransaction(int cents) {

System.out.println(cents + " paid using Credit Card. "’);

}

}

class Bill {//包含所有購買商品的賬單

private List<Item> items = new ArrayList<>();

public void add(Item item) { items.add(item); }

public intgetTotalPrice( ){/*計算所有 item 的總價格,代碼略*/ }

public void pay(PaymentMethod paymentMethod){//用指定的支付方式完成支付

(5)       (getTotalPrice( ));

}

}

public class PaymentSystem {

public void pay( ) {

Bill bill = new Bill( );

Item item1 = new Item("1234",10); Item item2 = new Item( "5678",40);

bill.add(item1); bill.add(item2); //將物品添加到賬單中

bill.pay(new CreditCard("LI SI", "98765432101")); //信用卡支付

}

public static void main(String[ ] args) {

(6)     = new PaymentSystem( );

payment.pay( );

}

}


相關推薦:2019上半年程序員下午真題及答案

在線題庫:程序員歷年真題自測估分

備考資料:視頻課程備考資料  |  免費課程

真題練習:歷年真題 每日一練  |  在線試題庫

更多資料
更多課程
更多真題
溫馨提示:因考試政策、內容不斷變化與調整,本網站提供的以上信息僅供參考,如有異議,請考生以權威部門公布的內容為準!

軟考備考資料免費領取

去領取

!
咨詢在線老師!