首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和Java代码,将应填入 (n) 处的字句写在对应栏内。 [说明] 某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图6-1所示。 现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增
阅读下列说明和Java代码,将应填入 (n) 处的字句写在对应栏内。 [说明] 某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如图6-1所示。 现在采用组合(Composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增
admin
2013-01-05
31
问题
阅读下列说明和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) ; //打印饭店所有菜单的信息
}
}
(3)
选项
答案
add(menuComponent)
解析
转载请注明原文地址:https://jikaoti.com/ti/0ui7FFFM
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
测试记录包括、(64)。①测试计划或包含测试用例的测试规格说明。②测试期间出现问题的评估与分析。③与测试用例相关的所有结果,包括在测试期间出现的所有失败。④测试中涉及的人员身份。
正确的集成测试描述包括(43)。①集成测试也叫做组装测试,通常是在单元测试的基础上,将模块按照设计说明书要求进行组装和测试的过程②自顶向下的增殖方式是集成测试的一种组装方式,它能较早地验证主要的控制和判断点,对于输入输出模块、复杂算法模
软件风险一般包含(14)两个特性。
“<titlestyle="italic">science</title>”是XML中一个元素的定义,其中元素的内容是(29)。
某系统中,模块A处理与销售相关的所有细节,仅需要发送一个包含销售量、价格和时间的报表到模块B,则这两个模块之间为()耦合。
功能测试执行过后一般可以确认系统的功能缺陷,缺陷的类型包括(37)。①功能不满足隐性需求②功能实现不正确③功能不符合相关的法律法规④功能易用性不好
某文件管理系统在磁盘上建立了位示图(bitmap),记录磁盘的使用情况。若系统中字长为32位,磁盘上的物理块依次编号为:0、1、2、…,那么8192号物理块的使用情况在位示图中的第(12)个字中有所描述。
针对程序段:IP(A||B||C)THENW=W/X,对于(A,B,C)的取值,(57)测试用例能够满足MCDC(修正条件逻辑判定)的要求。
在软件开发过程中,常采用图形表示相关的信息,(28)不用于表示软件模块的执行过程。
函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(callbyvalue)方式,第二个参数采用传引用(callbyreference)方式,main()执行后输出的值为_______。
随机试题
中国近代“开风气之先”的思想家是
百合固金汤、养阴清肺汤和清燥救肺汤均含有的药物是
1岁患儿,母乳喂养,未加辅食,约2个月前发现患儿活动少,不哭、不笑,面色苍黄,表情呆滞,手及下肢颤抖。检查发现肝、脾增大,血红细胞1×1012/L,血红蛋白65g/L。血清铁、叶酸正常,血清维生素B12降低。该患儿贫血程度为
关于个人与环境的关系,社会工作的专业观点认为()。
技术的报复效应人类对技术的乐观或悲观倾向由来已久,但普林斯顿大学历史学家爱德华·泰纳的说法可能会使你大吃一惊:技术不仅没有给人类缔造福祉,反而极大地报复了人类。泰纳写道:就在我们欢庆又把自然世界的混乱削减了几分之几时,我们制造的新机器开
在我国,法律监督的主体是国家机关。()
遗传变异与物种演化是生物界中存在的普遍现象,这种现象产生的原因是:
人体中流动的红色血液是由红细胞、白细胞、血小板、血浆等成分组成的全血。目前先进的医学技术强调的是成分输血,在临床使用上很多情况不需要全血,只采用一种或几种血液成分来治疗。因此,人造血液也不需要与全血成分完全一致。现在已有血浆代用品上市,血小板代用品也已经开
FileInputStream是字节流,BufferedWriter是字符流,ObjectOutputStream是______。
BonAppetiteA)Wealllovethefoodwegrowupon,butwealsoseekadventureinthefoodwehavenevertasted.Ahugelypopular
最新回复
(
0
)