首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入 (n) 处的字句写在对应栏内。 [说明] 某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图6-1所示。 现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增
阅读下列说明和Java代码,将应填入 (n) 处的字句写在对应栏内。 [说明] 某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图6-1所示。 现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增
admin
2013-01-05
54
问题
阅读下列说明和Java代码,将应填入 (n) 处的字句写在对应栏内。
[说明]
某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图6-1所示。
现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增加新的餐饮形式,得到如图6-2所示的类图。其中MenuComponent为抽象类,定义了添加(add)新菜单和打印饭店所有菜单信息(print)的方法接口。类Menu表示饭店提供的每种餐饮形式的菜单,如煎饼屋菜单、咖啡屋菜单等。每种菜单中都可以添加子菜单,例如图6-1中的甜点菜单。类MenuItem表示菜单中的菜式。
[Java代码]
import Java.util.*;
(1) MenuComponent{
protected String name;
(2) ;//添加新菜单
public abstract void print(); //打印菜单信息
public String getName(){return name;}
}
class MenuItem extends MenuComponent{
private double price;
public Menultem(String name, double price){
this.name=name; this.price=price;
}
public double getPrice() {return price;}
public void add(MenuComponent menuComponent){return;}//添加新菜单
public void print(){
System.out.print(""+getName());
System.out.println(","+getPrice());
}
}
class Menu extends MenuComponent {
private List<MenuComponent>menuComponents=new ArrayList<MenuComponent>();
public Menu(String name){this.name=name;}
public void add(MenuComponent menuComponent){ //添加新菜单
menuComponents. (3) ;
}
publiC void print(){
System.out.print(“\n"+getName());
System.out.println(","+"-------------------------");
Iterator iterator=menuComponents.iterator();
while(iterator.hasNext()){
MenuComponent menuC0mponent=(MenuComponent)iterator.next();
(4) ;
}
}
Class MenuTestDrive{
public static void main(String args[]){
MenuComponent allMenus=new Menu("ALL MENUS");
MenuComponent dinerMenu=new Menu("DINER MENU");
…//创建更多的Menu对象,此处代码省略
allMenus. add(dinerMenu); //将dinerMenu添加到餐厅菜单中
…//为餐厅增加更多的菜单,此处代码省略
(5) ; //打印饭店所有菜单的信息
}
}
(2)
选项
答案
public abstract void add(MenuComponent menuComponent) 或abstract void add(MenuComponent menuComponent) 或protected abstract void add(MenuComponent menuComponent)
解析
转载请注明原文地址:https://kaotiyun.com/show/deDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
下面①~④是关于软件评测师工作原则的描述,正确的判断是(38)。①对于开发人员提交的程序必须进行完全的测试,以确保程序的质量。②必须合理安排测试任务,做好周密的测试计划,平均分配软件各个模块的测试时间。③在测试之前需要与开发人员进行详细的交流,明确开
在Internet上有许多协议,下面的选项中能正确表示协议层次关系的是(12)。
下图是①设计模式的类图,该设计模式的目的是②,图中,Abstraction和RefinedAbstraction之间是③关系,Abstraction和Implementor之间是④关系。③处应填入?
软件内部/外部质量模型中,(33)不是可移植性包括的子特性。
序言性注释是指在每个程序或模块开头的一段说明,起辅助理解程序的作用,一般包括:程序的表示、名称和版本号;程序功能描述;接口与界面描述;输入输出数据说明:开发历史;与运行环境有关的信息等。下列叙述中不属于序言性注释的是(23)。
将源程序中多处使用的同一个常数定义为常量并命名,______。
以下关于建立良好的程序设计风格的叙述中,正确的是()。
阅读以下说明,回答问题1至问题4,将解答填入答题纸的对应栏内。[说明]A公司用1台Web服务器和1台应用服务器来管理销售信息。销售人员在办公室时通过PC机来访问应用服务器,若在公司以外,则通过具有数据显示功能的移动电话或PDA(Perso
该DHCP服务器可分配的IP地址有多少个?在Windows操作系统下,DHCP客户端“Internet协议(TCP/IP)属性”配置界面如下图所示。在此界面中,客户端应如何配置?
对文法G进行改写,然后对每个非终结符写出不带回溯的递归子程序。经改写后的文法是否是LL(1)的?指出它的预测分析表中(1)~(3)处的内容。
随机试题
下面的法律规定中,哪些不属于法的要素中的法律规则?()
计算机软件通常分为_____________和应用软件两大类。
A.组织学检查B.快速尿素酶试验C.幽门螺杆菌培养D.14C尿素呼气试验消化性溃疡幽门螺杆菌根治治疗后复查的首选方法是
甲状腺大部切除术后,呼吸困难和窒息的可能原因不包括()
格林-巴利征不常有的表现为
奏效最为迅速的给药方法是
我国环境标准的法规特征是()。
项目后评价单位接受和承揽到后评价任务委托后,首要任务就是与()签订评价合同或相关协议,以明确各自在后评价工作中的权利和义务。
人力资源规划的基点是()。
Menwhoexerciseoftenarelesslikelytodiefromcancerthanthosewho【C1】______,newresearchpublishedintheBritishJourna
最新回复
(
0
)