軟件設(shè)計師案例分析當(dāng)天每日一練試題地址:m.xiexiliangjiufa.com/exam/ExamDayAL.aspx?t1=4
往期軟件設(shè)計師每日一練試題匯總:m.xiexiliangjiufa.com/class/27/e4_1.html
軟件設(shè)計師案例分析每日一練試題(2023/10/20)在線測試:m.xiexiliangjiufa.com/exam/ExamDayAL.aspx?t1=4&day=2023/10/20
點(diǎn)擊查看:更多軟件設(shè)計師習(xí)題與指導(dǎo)
軟件設(shè)計師案例分析每日一練試題內(nèi)容(2023/10/20)
試題六
閱讀下列說明和Java代碼,將應(yīng)填入 (n) 處的字句寫在對應(yīng)欄內(nèi)。
[說明]
某飯店在不同的時段提供多種不同的餐飲,其菜單的結(jié)構(gòu)圖如圖6-1所示。
現(xiàn)在采用組合(Composition)模式來構(gòu)造該飯店的菜單,使得飯店可以方便地在其中增加新的餐飲形式,得到如圖6-2所示的類圖。其中MenuComponent為抽象類,定義了添加(add)新菜單和打印飯店所有菜單信息(print)的方法接口。類Menu表示飯店提供的每種餐飲形式的菜單,如煎餅屋菜單、咖啡屋菜單等。每種菜單中都可以添加子菜單,例如圖6-1中的甜點(diǎn)菜單。類MenuItem表示菜單中的菜式。
[Java代碼]
import Java.util.*;
(1) MenuComponent{
protected String name;
(2) ;//添加新菜單
public abstract void print24; //打印菜單信息
public String getName24{return name;}
}
class MenuItem extends MenuComponent{
private double price;
public Menultem(String name, double price){
this.name=name; this.price=price;
}
public double getPrice24 {return price;}
public void add(MenuComponent menuComponent){return;}//添加新菜單
public void print24{
System.out.print(""+getName24);
System.out.println(","+getPrice24);
}
}
class Menu extends MenuComponent {
private List<MenuComponent>menuComponents=new ArrayList<MenuComponent>24;
public Menu(String name){this.name=name;}
public void add(MenuComponent menuComponent){ //添加新菜單
menuComponents. (3) ;
}
publiC void print24{
System.out.print(“\n"+getName24);
System.out.println(","+"-------------------------");
Iterator iterator=menuComponents.iterator24;
while(iterator.hasNext24){
MenuComponent menuC0mponent=(MenuComponent)iterator.next24;
(4) ;
}
}
Class MenuTestDrive{
public static void main(String args[]){
MenuComponent allMenus=new Menu("ALL MENUS");
MenuComponent dinerMenu=new Menu("DINER MENU");
…//創(chuàng)建更多的Menu對象,此處代碼省略
allMenus. add(dinerMenu); //將dinerMenu添加到餐廳菜單中
…//為餐廳增加更多的菜單,此處代碼省略
(5) ; //打印飯店所有菜單的信息
}
}
信管網(wǎng)考友試題答案分享:
信管網(wǎng)北京市電信考友:
1 class
2 public string add(menucomponent menucomponent){return}
3 getname
4
5print24(allmenus)
信管網(wǎng)cbsa233:
(1) abstract class
(2) public abstract void add(menucomponent menucomponent )
(3)add(menucomponent )
(4)menucomponent.print24()
(5)allmenus.print24()
信管網(wǎng)訂閱號
信管網(wǎng)視頻號
信管網(wǎng)抖音號
溫馨提示:因考試政策、內(nèi)容不斷變化與調(diào)整,信管網(wǎng)網(wǎng)站提供的以上信息僅供參考,如有異議,請以權(quán)威部門公布的內(nèi)容為準(zhǔn)!
信管網(wǎng)致力于為廣大信管從業(yè)人員、愛好者、大學(xué)生提供專業(yè)、高質(zhì)量的課程和服務(wù),解決其考試證書、技能提升和就業(yè)的需求。
信管網(wǎng)軟考課程由信管網(wǎng)依托10年專業(yè)軟考教研傾力打造,教材和資料參編作者和資深講師坐鎮(zhèn),通過深研歷年考試出題規(guī)律與考試大綱,深挖核心知識與高頻考點(diǎn),為學(xué)員考試保駕護(hù)航。面授、直播&錄播,多種班型靈活學(xué)習(xí),滿足不同學(xué)員考證需求,降低課程學(xué)習(xí)難度,使學(xué)習(xí)效果事半功倍。
發(fā)表評論 查看完整評論 | |