试题详情

试题内容

试题六
阅读以下说明和Java代码,将应填入  (n)  处的字句写在答题纸的对应栏内。
【说明】
某绘图系统存在Point、Line、Square三种图元,它们具有Shape接口,图元的类图关系如图6-1所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供了XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由Shape派生而来,它提供的接口不能被系统直接使用。代码6-1既使用了XCircle又遵循了Shape规定的接口,既避免了从头开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。代码6-2根据用户指定的参数生成特定的图元实例,并对之进行显示操作。
绘图系统定义的接口与XCircle提供的显示接口及其功能如下表所示:

【代码6-1】
class Circle  (1)  {
private  (2)  pxc;
public Circle(){pxc=new  (3)  ;
}
public void display(){
pxc.  (4)  ;
}
}
【代码6-2】
public class Factory{
public  (5)  getShapeInstance(int type){ //生成特定类实例
switch(type){
case 0: return new Point ( );
case 1: return new Rectangle ( ) ;
case 2: return new Line ( ) ;
case 3: return new Circle ( ) ;
default: return null;
}
}
public class App{
public static void main (String argv[] )
if (argv. length != l) {
System. out.println ("error parameters !");
return;
}
inttype= (new Integer (argv[0])) .intValue (
Factory factory = new Factory ( ) ;
Shape s;
s=factory,   (6)
if (s==null) {
System.out.println ( "Error get instance !" )
return;
}
s.display () ;
return;
}
}



查看答案

软题库参考答案:暂时没有答案(仅供参考)

软题库解析:正在加载....

你可能感兴趣的试题

6题:阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某软件系统中,已设计并实现了用于显示地址信息的类 Address(如图6-1所示),现要求提供基于 Dutch语言的地址信息显示接口。为了实现该要求并考虑到以后可能还会出现新的语言的接口1,决定采用适配器( Adapter)模式实现该要求,得到如图61所示的类图。

【Java代码】
Import  java.util.*;
class Address  {
public void street()     {       //      实现代码省略          
3题:【说明】
某房产公司,欲开发一个房产信息管理系统,其主要功能描述如下:
1.公司销售的房产,分为住宅和公寓两类。针对房产,系统存储房产证明,地址,建造年份,建造面积,销售报价,房产照片以及销售状态(在售,售出,停售)等信息。对于公寓,还需存储是否有等信息。
2. 公司雇佣了多名房产经纪,负责销售房产,系统中需要存储房产经纪的基本信息,包括:姓名,家庭住址,联系电话,房产的起止时间等等。一套房产同一时间仅由一名房产经纪负责销售,系统中记录房产经纪负责房产的起始时间和终止时间。
3.系统用户包括房产经纪和系统管理员,用户需经过系统身份验证之后,才能登录系统。房产经纪登录系统之后,可以录入负责销售的房产信息。但需要经过系统管理员的审批授权。
4.系统管理员可以从系统中导出所有房产的信息列表,系统管理员定期将信息和销售的房产,进行归纳,若公司确定不再销售某套房产,系统管理员将房产信息从系统中删除。
现采用面向对象方法开发该系统得到如图3-1所示的图例和3- 2所示的图。
3题:

试题三
阅读下列说明和图,回答问题1至问题3。
【说明】
某图书管理系统的主要功能如下:
1.图书管理系统的资源目录中记录着所有可供读者借阅的资源,每项资源都有一个唯一的索引号。系统需登记每项资源的名称、出版时间和资源状态(可借阅或已借出)。
2.资源可以分为两类:图书和唱片。对于图书,系统还需登记作者和页数;对于唱片,还需登记演唱者和介质类型(CD或者磁带)。
3.读者信息保存在图书管理系统的读者信息数据库中,记录的信息包括:读者的识别码和读者姓名。系统为每个读者创建了一个借书记录文件,用来保存读者所借资源的相关信息。
现采用面向对象方法开发该图书管理系统。识别类是面向对象分析的第一步。比较常用的识别类的方法是寻找问题描述中的名词,再根据相关规则从这些名词中删除不可能成为类的名词,最终得到构成该系统的类。表10-4给出了[说明]中出现的所有名词。
4题:

试题四
设有m台完全相同的机器运行n个独立的任务,运行任务i所需要的时间为ti,要求确定一个调度方案是的完成所有任务所需要的时间最短。
假设任务已经按照其运行时间从大到小排序,算法基于最长运行时间作业优先的策略;按顺序先把每个1务分配到一台机器上,然后将剩余的任务一次放入最先空闲的机器。
[C代码]
下面是算法的C语言实现。
10常量和变量说明
m:机器数。
n:任务数。
t[]:输入数组,长度为n,其中每个元素表示任务的运行时间,下标从0开始。
s[][]:二维数组,长度为m*n,下标从0开始,其中元素s[i][j]表示机器i运行的任务j的编号。
d[]:数组,长度为m其中元素d[i]表示机器i的运行时间,下标从0开始。
count[]:数组,长度为m,下标从0开始,其中元素count[i]表示机器i运行的任务数。
i:循环变量。
j:循环变量。
k:临时变量。
max:完成所有任务的时间。
min:临时变量。
3题:阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某公司欲开发一个管理选民信息的软件系统。系统的基本需求描述如下:
(1)每个人(Person)可以是一个合法选民(Eligible)或者无效的选民(Ineligible)。
(2)每个合法选民必须通过该系统对其投票所在区域(即选区,Riding)进行注册( Registration)。每个合法选民仅能注册一个选区。
(3)选民所属选区由其居住地址(Address)决定。假设每个人只有一个地址,地址可以是镇(Town)或者城市(City)。
(4)某些选区可能包含多个镇;而某些较大的城市也可能包含多个选区。
现采用面向对象方法对该系统进行分析与设计,得到如图1-1所示的初始类图。

【问题1】 (8分)
根据说明中的描述,给出图1-1中C
5题:阅读下列说明和C++代码,将应填入 (n) 处的字句写在答题纸的对应栏内。
【说明】
某灯具厂商欲生产一个灯具遥控器,该遥控器具有7个可编程的插槽,每个插槽都有开关按钮,对应着一个不同的灯。利用该遥控器能够统一控制房间中该厂商所有品牌灯具的开关,现采用Command(命令)模式实现该遥控器的软件部分。Command模式的类图如图1-1所示。

【C++代码】
class Light {
public:
Light(string name) { /* 代码省略 */ }
void on() { /* 代码省略 */ }    // 开灯
void off() { /* 代码省略 */ }  // 关灯
};
class Command {
public: