首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明Java代码,将应填入(1)~(6)处的字句写在答题纸的对应栏内。 【说明】 现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQIL Server和Access两种数据库以及系统中的数
阅读下列说明Java代码,将应填入(1)~(6)处的字句写在答题纸的对应栏内。 【说明】 现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQIL Server和Access两种数据库以及系统中的数
admin
2013-07-09
65
问题
阅读下列说明Java代码,将应填入(1)~(6)处的字句写在答题纸的对应栏内。
【说明】
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQIL Server和Access两种数据库以及系统中的数据库表Department为例,其类图如图6—1所示。
[Java代码】
import java.util.*:
class Department{/*代码省略*/)
interface IDepartment{
(1)
;
(2)
;
}
class SqlserverDepartment:
(3)
{
public:
voidInsert(Department department){
System.out.println(“Insert a record into Department in SOL Server!\n”);
//其余代码省略
}
public Department GetDepartment(int id){
//代码雀略
}
}
class AccessDepartment:
(4)
{
public voidInsert(Department department){
System.out.println(“Insert a record into Department in ACCESS! \n”);
//其余代码省略
}
public Department GetDepartment(int id){
//代码省略
}
};
(5)
{
(6)
;
}
class sqlserverFactory implements IFactory{
public IDepartment CreateDepartment()(
return new Sql serverDepartment();
}
//其余代码省略
};
class AccessFactory implements IFactory{
public IDepartment createDepartment(){
return new AccessDepartment();
}
//其余代码省略
};
选项
答案
(1)void Insert(Department department) (2)Department GetDepartment(int id) (3)implements IDepartment (4)implements IDepartment (5)interface Ifactory (6)IDepartment CreateDepartment()
解析
本题考查抽象工厂设计模式的概念及其应用。
抽象工厂设计模式的意图是:提供一个创建一系列相
关或相互依赖的对象,而无须指出它们具体的类。在如下情况下应当考虑使用抽象工厂模式:
.当一个系统要独立于它的产品的创建、组合和表示时;
.当一个系统要由多个产品系列中的一个来配置时;
.当需强调一系列相关的产品对象的设计以便进行联合使用时;
.想提供一组对象而不显示它们的实现过程,只显示
它们的接口时。抽象工厂设计模式的类图如图6—2所示,其中:
.AbstractFactory为抽象工厂,声明抽象产晶的方法。
.ConcreteFactory为具体工厂,执行生成抽象产品的方法,生成一个具体的产品。
.AbstractProduct为抽象产品,为一种产品声明接口。
.Product为具体产品,定义具体工厂生成的具体产品的对象,实现产品接口。
图6-1中的Ifactory对应类图中的AbstractFactory、Sqlserverfactory和Accessfactory对应类图中的ConcreteFactory、SqlserverDepartment和AccessDepartment对应类图中的Prod-uct,而IDepartment对应类图中的AbstractProduct。
(1)和(2)考查接口IDepartment中方法的定义。由其子类SqlserverDepartment和AccessDepartment中方法的定义,可知(1)处应填入void Insert(Department department),(2)处应填入Department GetDepartment(int id)。
(3)和(4)考查接口IDepartment的实现。接口的实现是在一个类的声明中使用关键字“implements”来表示该类使用某个已经定义的接口,然后即可在该类体中使用接口中定义的常量,而且必须实现接口中定义的所有方法。因此,(3)和(4)都应填入implements IDepartment。
由于所给程序中缺少接口Ifactory的定义,因此(5)处应为定义接口Ifactory,应填入interface Ifactory。由于类Sqlserverfactory和Aceessfaetory中必须实现接口Ifaetory中定义的所有方法,观察这两个类中的方法可知,(6)处应填入IDepartment CreateDepartment()。
转载请注明原文地址:https://www.kaotiyun.com/show/xiDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
某银行系统要求报表功能容易扩展,以便在需要的时候可以处理新的文件格式,.则该需求是()的。
下图是________________设计模式的类图,该设计模式的目的是________________,图中,Decorator和Component之间是________________关系,ConcreteDecorator和Decorator之间是_
()主要对与设计相关的软件体系结构的构造进行测试。
确定测试基线属于()活动。
若某计算机系统是由500个元器件构成的串联系统,且每个元器件的失效率均为10-7/h,在不考虑其他因素对可靠性的影响时,该计算机系统的平均故障间隔时间为(5)h。
某开发小组为某企业开发较大规模的项目,该开发小组已经为同一行业的其他企业开发过类似的项目,且该项目需求变化很少,则最适宜采用_______开发过程模型。
函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(callbyvalue)方式,第二个参数采用传引用(callbyreference)方式,main()执行后输出的值为_______。
某计算机系统页面大小为4K,进程P的页面变换表如下表所示。若P中某数据的逻辑地址为十六进制2C18H,则该地址的页号和页内地址分别为2和C18H;经过地址变换后,其物理地址应为十六进制______。
通常VLAN有静态和动态2种实现方式,这2种方式分别是如何实现的?各有什么特点?Switch1采用的是哪种实现方式?填充VLAN信息表如表9-3所示,将答案填写在答题纸相应位置。
在应用服务器关机的情况下,公司员工能连接上因特网吗?简要解释。假设采用ISDN基本速率接口,下载1875KB的文件,最快需要多长时间?
随机试题
比较以下液体的衰减程度,正确的是
A.丹栀逍遥散B.乌药汤C.通窍活血汤D.天仙藤散E.龙胆泻肝汤治疗子肿气滞证,应首选
A、吗啡激动导水管周围阿片受体B、吗啡激动中脑盖前核阿片受体C、吗啡激动边缘系统阿片受体D、吗啡激动孤束核阿片受体E、激动蓝斑核阿片受体吗啡引起情绪变化是由于
经办银行于每年()前,将上一年度实际发放的国家助学贷款金额和违约率按照各高校进行统计汇总,并经合作高校确认后填制“中央部门所属高校国家助学贷款实际发放汇总表”上报分行,分行按学校和经办银行汇总辖内上报信息后,在()个工作日内上报总行
下列选项中体现矛盾双方相互转化这一哲学原理的是()。
材料一我国科技事业取得的历史性成就,是一代又一代矢志报国的科学家前赴后继、接续奋斗的结果。从李四光、钱学森、钱三强、邓稼先等一大批老一辈科学家,到陈景润、黄大年、南仁东等一大批新中国成立后成长起来的杰出科学家,都是爱国科学家的典范。希望广大科技工作者不忘
2,8,32,128,()
适用于描述两个变量之间的函数关系的统计分析图是
ROM中的信息是()。
Wheredoesthisconversationmostlikelytakeplace?
最新回复
(
0
)