2022年10月18日来源:信管网 作者:cnitpm
试题一:阅读下列说明和java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某饭店在不同的时段提供多种不同的餐饮,其菜单的结构图如下图所示。
现在采用组合( composition)模式来构造该饭店的菜单,使得饭店可以方便地在其中增加新的餐饮形式,得到如下图所示的类图。其中menucomponent为抽象类,定义了添加(add)新菜单和打印饭店所有菜单信息(print)的方法接口。类menu表示饭店提供的每种餐饮形式的菜单,如煎饼屋菜单、咖啡屋菜单等。每种菜单中都可以添加子菜单,例如图中的甜点菜单。类menultem表示菜单中的菜式。
【java代码】
import java.util.*;
(1) menucomponent{
protected string name;
(2) ;//添加新菜单
public abstract void print(); //打印菜单信息
public string getname(){ return name;}
}
class menultem extends menucomponent{
private double price;
public menuitem(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 listmenucomponents= new arraylist();
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 menucomponent= (menucomponent)iterator.next();
(4) ;
}
}
}
class menutestdrive{
public static void main(string args[]){
menucomponent aiimenus= new menu("all menus");
menucomponent dinermenu = new menu("diner menu”);
……//创建更多的menu对象,此处代码省略
allmenus.add(dinermenu); //将dinermenu添加到餐厅菜单中
……//为餐厅增加更多的菜单,此处代码省略
(5); //打印饭店所有菜单的信息
}
}
查看答案
试题二:阅读下列说明,回答问题1至问题3。
【说明】
某医院的门诊管理系统实现了为患者提供挂号、处方药品收费的功能。具体的需求及设计如下:
1.医院医师具有编号,姓名,科室,职称,出诊类型和出诊费用,其中出诊类型分为专家门诊和普通门诊,与医师职称无关;各个医师可以具有不同的出诊费用,与职称和出诊类型无关。
2.患者首先在门诊挂号处挂号,选择科室和医师,根据选择的医师缴纳挂号费(医师出诊费)。收银员为患者生成挂号单,如表10-1所示,其中,就诊类型为医师的出诊类型。
3.患者在医师处就诊后,凭借挂号单和医师手写处方到门诊药房交费买药。收银员根据就诊号和医师处方中开列的药品信息,查询药品库(如表10-2所示)并生成门诊处方单(如表10-3所示)。
4.由于药品价格会发生变化,因此,门诊管理系统必须记录处方单上药品的单价。
根据需求阶段收集的信息,设计的实体联系图和关系模式(不完整)如下所示:
2.关系模式
挂号单(就诊号,病患姓名,医师编号,时间, 4 )
收银员(编号,姓名,级别)
医师(编号,姓名,科室,职称,出诊类型,出诊费用)
门诊处方( 5 ,收银员,时间)
处方明细(就诊号, 6 )
药品库(药品编码,药品名称, 7 )
【问题1】
根据问题描述,填写图10-3实体联系图中(1)~(4)处联系的类型。
【问题2】
图10-3中还缺少几个联系?请指出每个联系两端的实体名,格式如下。
实体1:实体2
例如,收银员与门诊处方之间存在联系,表示为:
收银员:门诊处方 或 门诊处方:收银员
【问题3】
根据实体联系图10-3,填写挂号单、门诊处方、处方明细和药品库关系模式中的空 (5)~(8)处,并指出挂号单、门诊处方和处方明细关系模式的主键。
查看答案
备考刷题推荐:
【估分/对答案收藏】2022年下半年软件设计师真题答案解析(综合+案例)
报信管网软件设计师培训课程享有报名首次邮送内部学习资料及用品 +全科目系统精讲课程+课程课后配套习题练习+ 软题库免费刷题等服务。【点击了解详情】
温馨提示:因考试政策、内容不断变化与调整,信管网提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关推荐