首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2012年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL Server和Access两
(2012年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL Server和Access两
admin
2018-07-27
57
问题
(2012年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL Server和Access两种数据库以及系统中的数据库表Department为例,其类图如图10.25所示。
【Java代码】
import java.util.*;
class Department{/*代码省略*/}
interface IDepartment {
______(1);
______(2);
}
class sq1serverDepartment: ______(3) {
public:
void Insert(Department department){
System.out.println(’’Insert a record into Department in SQL Server!\n’’);
//其余代码省略
}
public Department GetDepartment(int id){
/*代码省略*/
}
}
class AccessDepartment: ______(4) {
public void Insert(Department department){
System.out.println(’’Insert a record into Department in ACCESS!\n’’);
//其余代码省略
}
public Department GetDepartment(int id){
/*代码省略*/
}
};
______(4) {
______(6);
}
class Sq1ServerFactory implements IFactory{
public IDepartment CreateDepartment(){
return new Sq1serVerDepartment();
}
//其余代码省略
};
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()
解析
本题考查抽象工厂设计模式的概念及其应用。
抽象工厂设计模式的意图是:提供一个创建一系列相关或相互依赖的对象,而无须指出它们具体的类。在如下情况下应当考虑使用抽象工厂模式。
当一个系统要独立于它的产品的创建、组合和表示时。
当一个系统要由多个产品系列中的一个来配置时。
当需要强调一系列相关的产品对象的设计以便进行联合使用时。
当想提供一组对象而不显示它们的实现过程,只显示它们的接口时。
抽象工厂设计模式的类图如图10.26所示,其中:
Abstractory为抽象工厂,声明抽象产品的方法;
ConcreteFactory为具体工厂,执行生成抽象产品的方法,生成一个具体的产品;
ProductA和ProductB为抽象产品,为一种产品声明接口;
ProductA1/A2/B1/B2为具体产品,定义具体工厂生成的具体产品的对象,实现产品接口。
图10.25中的IFactory对应图10.26中的Abstractory,Sq1serverFactory和AccessFactory对应图10.26中的ConcreteFactory,SqlserverDepartment和AccessDepanment对应图10.26中的ProductA1/A2/B1/B2,而IDepartment对应图10.26中的ProductA和ProductB。
空(1)处和空(2)处考查接口IDepartment中方法的定义。由其子类Sq1serverDepartment和AccessDepanment中方法的定义,可知空(1)处应填入void Insert(Department department),空(2)处应填入Department GetDepartment(int id)。
空(3)处和空(4)处考查接口IDepartment的实现。接口的实现是在一个类的声明中使用关键字“implements”来表示该类使用某个已经定义的接口,然后即可在该类体中使用接口中定义的常量,而且必须实现接口中定义的所有方法。因此,窄(3)处和空(4)处都应填入implements IDepartment。
由于所给程序中缺少接口IFactory的定义,因此空(5)处应为定义接口IFactory,应填入interface IFactory。由于类Sq1serverFactory和AccessFactory中必须实现接口IFactory中定义的所有方法,观察这两个类中的方法可知,空(6)处应填入IDepartment CreateDepartment()。
转载请注明原文地址:https://www.kaotiyun.com/show/szxZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
请问无线局域网的工作模式有哪几种?平时所用的手机可漫游在不同的基站之间,WLAN工作站也可漫游,请问WLAN的“漫游”含义是什么?
请问无线局域网的工作模式有哪几种?常见的无线网络协议有哪些?
某单位拟建立一个Intranet,建立自己的Web服务器、DNS服务器,E-mail服务器和内部业务服务器,有一批客户机联网,要求这些机器有的可以到Internet上,只允许访问自己的Web服务器。请你做出规划,解决如下问题。
结合图7-18所示的网络拓扑结构图,将以下路由器R1配置信息中(1)~(9)空缺处的内容填写完整,实现路由器R1的正确配置。Router>en(进入特权模式)Router#
请用蒙特卡罗错误随机植入模型估算出被测程序模块中将会遗留下多少个未被发现的隐藏错误。请简要列出计算式子及计算过程。信息部门的吴总工程师向谢工程师建议了另一种测试方案作为“错误随机植入”测试方法的补充。即由A和B两组测试人员同时相互独立地测试同一份宽带路
由于面向3G移动电话的电子商务网站看不到用户进行销售服务,因此,对用户身份进行认证是必要。通常,在Internet中进行电子签名的认证过程如下:①文件的发送者将要发送的文件生成(1);②用发送者的(2)对摘要加密后,将其添加到文件中;
Samba的工作原理是:让(1)和NetBIOS这两种协议运行于TCP/IP通信协议之上,且通过Windows的(2)协议让用户的Linux计算机可以在Windows的网络邻居上被看到。Samba服务器配置工具是用来管理Samba共享、用户及基本服
为了便于用户下载相关资料,特安装一台FTP服务器,其服务器端软件是Serv-U,假如要增加一个名为CIU10009的用户,对应目录为D盘,且要求加密,在图6-4中怎么设置?假如用户人数达到1000,为了保证100个用户同时正常下载,请问在图6-4中怎么
随机试题
增加离体神经纤维浸浴液中的Na+浓度,则单根神经纤维动作电位的超射值将
简述消化性溃疡的外科手术指征。
建筑物电子信息系统的雷电防护等级应按防雷装置的()划分。
北京地区某公共建筑工程,地上10层,地下2层,建筑面积25780m2。采暖通风空调及生活热水供应系统、照明系统的全年能耗比上年度降低40%,且静态投资回收期已到5年。使用单位决定严格按照国家有关节能改造工程规定改造。节能改造前使用单位组织进行了节能诊断。施
下列不属于企业集团财务公司资产业务的是()。
会计核算时将以融资租赁方式租入的资产视为企业的资产进行核算和管理所反映的会计信息质量要求是()。
如果心理测量结果与临床观察和会谈得到的结论不一致,心理咨询师应该()
校长:老师
普利策新闻奖已经走过了一个卓越的世纪。从一开始,普利策奖就拥有某种定义新闻业的能力,即便是在这个新闻行业经历数字化巨变的时期。只需放眼今日的新闻界,便知一片哀鸿之中,人们需要普利策奖来打气,也以其来鉴别新闻的好与坏。面临职业动荡和日常压力,新闻从业者往往选
执行语句序列()。inti=0;while(i<25)i+=3;cout<<i;输出结果是
最新回复
(
0
)