首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
(2012年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL Server和Access两
(2012年下半年下午试题六)阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL Server和Access两
admin
2018-07-27
31
问题
(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://kaotiyun.com/show/szxZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
请问无线局域网的工作模式有哪几种?常见的无线网络协议有哪些?
从图7-1中可以看出采用什么拓扑结构与设计方法?为了进一步简化系统,有人建议把“电脑模块”与“电话模块”合成一个模块,其传输介质共用,这可以实现吗?
请指出现有虚拟局域网络的4种划分方式。以下为Cisco以太网交换机Catalyst2924(ws-c2924xlA,拥有24个10/100Mbit/s自适应端口)的VLAN划分命令,请解释(1)~(3)处的标有下划线部分配置命令的含义。(“//”后为
阅读以下有关网络设计的叙述,分析网络结构,回答问题1、问题2和问题3。某企业从20世纪50年代中期开始使用PC,历经3+网络、NOVELL网络的应用,后着手组建企业网络。经过需求分析和论证,设计出网络方案如图3-2所示。
阅读以下关于网络应用系统可靠性分析方面的技术说明,根据要求回答问题1至问题4。【说明】可靠性是一个网络应用系统能正常工作的能力,一般用平均故障间隔时间(MTBF)来度量。某网络应用软件研发公司正在开发一个嵌入式实时应用软件——宽带路由器的NanO
认真阅读以下实现VLAN间路由的配置技术说明,根据要求回答问题1至问题6。【说明】当交换机上的VLAN数量很多时,通常会采用路由器快速以太网子接,及IEEE802.1Q封装对VLAN间的数据进行路由。在如图3-12所示的拓扑图中,在交换机
阅读以下基于Linux操作系统部署DHCP服务的技术说明,根据要求回答问题1至问题3。【说明】某地市图书馆内部局域网划分为办公区、电子阅览室、无线阅览室等3个VLAN,并通过一台带防火墙模块的路由器与Internet网互连。为了便于整个局域网IP
在安装RedhatLinux9.0操作系统的过程中,如果没有选择安装Web服务器,Apache服务器则需要手动安装。现从http://httpd.apache.org网站上免费下载了一个apache-2.2.3RPM格式的软件包,请将以下(1)空缺处
随机试题
试述文学思潮与文学流派的关系。
宫颈黏液最丰富,伸展性最大,羊齿状结晶最典型出现在正常月经周期中的
巴比妥类药物解离度与药物的pKa和环境pH有关。在生理pH=7.4时,分子态形式和离子态形式比例接近的巴比妥类药物是()。
去甲肾上腺素静滴外漏引起组织坏死,可采用治疗措施有
它采用固体壁面将进行热交换的两种流体隔开,使它们通过壁面进行传热,其中“它”指的是()。
计算机辅助系统包括()。
季度或年度从业人员平均人数可以按照单位实际月平均人数计算得到,也可以用季末或年末人数替代。()
读图,其中甲图的阴影部分表示黑夜,回答下列问题。读图分析基多气温特点,并说明形成原因。
已知A=,A*是A的伴随矩阵,若r(A*)=1,则a=()
Themanistryingtofind
最新回复
(
0
)