首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL SerVer和Access两种数据库以及系统中的数据库表Depanment为例,其类图如图17—3所示。 [Java代码] import java.util
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL SerVer和Access两种数据库以及系统中的数据库表Depanment为例,其类图如图17—3所示。 [Java代码] import java.util
admin
2014-11-13
51
问题
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL SerVer和Access两种数据库以及系统中的数据库表Depanment为例,其类图如图17—3所示。
[Java代码]
import java.util*;
clasS Department(/*代码省略*/)
interface IDepartment(
(1) ;
(2) ;
}
class SqlserVerDepar七men七: (3) {
public:
void Insert(Department department){
System.out.print in(”Insert a record into Department in SQL Server\n”);
//其余代码省略
}
publ i c Department GetDepar七men七(int id)<
/*代码省略*/
}
}
Class AccessDepartment: (4) {
public void Insert(Department department){
system.out.print in(”Insert a record into Department in ACCESS I\n”};
//其余代码省略
}
public Department GetDepar七ment(int id)(
/*代码省略*/
}
};
(5) {
(6) ;
}
class SqlSerVerFac七ory implementS IFactory(
public 工Department CreateDepartment()(
re turn new Sqls erverDepartment();
}
//其余代码省略
};
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 CreateDepartmento
解析
本题考查抽象工厂设计模式的概念及其应用。其类图如图17—4所示。
抽象工厂设计模式的意图是:提供一个创建一系列相关或相互依赖的对象,而无须指出它们具体的类。在如下情况下应当考虑使用抽象工厂模式:
当一个系统要独立于它的产品的创建、组合和表示时;
当一个系统要由多个产品系列中的一个来配置时:
当需强调一系列相关的产品对象的设计以便进行联合使用时;
想提供一组对象而不显示它们的实现过程,只显示它们的接口时。
抽象工厂设计模式的类图如下所示,其中:
AbstractFactory抽象工厂,声明抽象产品的方法。
ConcreteFaCtory为具体工厂,执行生成抽象产品的方法,生成一个具体的产品。
AbstractProduct为抽象产品,为一种产品声明接口。
Product为具体产品,定义具体工厂生成的具体产品的对象,实现产品接口。
图17—3中的IFactory对应类图中的AbstractFactory,Sqlserverfactory和Accessfactory对应类图中的ConcreteFactory,SqlserverDepartment和AccessDepartment对应类图中的Product,而IDepartment对应类图中的AbstractProduct。
空(1)和空(2)考查接12]IDepartment中方法的定义。由其子类SqlserverDepartment和AccessDepartment中方法的定义,可知空(1)处应填入void Insert(Department department),空(2)处应填入Department GetDepartment(int id)。
空(3)和空(4)考查接口IDepartmentl~实现。接口的实现是在一个类的声明中使用关键字“implements”来表示该类使用某个已经定义的接口,然后即可在该类体中使用接口中定义的常量,而且必须实现接口中定义的所有方法。因此,空(3)和空(4)都应填入implements IDepartment。
由于所给程序中缺少接口IFactory的定义,因此空(5)处应为定义接ElIFactory,应填入interface IFactory。由于类Sqlserverfactory和Accessfactory中必须实现接口Ifactory 定义的所有方法,观察这两个类中的方法可知,空(6)处应填入IDepartment CreateDepartment0。
转载请注明原文地址:https://kaotiyun.com/show/GpDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
阅读以下说明,回答问题1至问题5。[说明]某小区采用HFC接入Internet的解决方案进行网络设计,网络结构如下图所示。
IIS安装的硬盘分区最好选用NTFS格式,是因为(1)和(2)。A.可以针对某个文件或文件夹给不同的用户分配不同的权限B.可以防止网页中的Applet程序访问硬盘中的文件C.可以使用系统自带的文件加密系统对文件或文件夹进行加密
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。在网关计算机上使用以下路由命令创建两个默认的路由:routeadd-net192.168.1.0255.255.2
在校园网设计过程中,划分了很多VLAN,采用了VTP来简化管理。1.VTP信息只能在(1)端口上传播。2.运行VTP的交换机可以工作在三种模式:(2)、(3)、(4)。3.共享相同VLAN数据库的交换机构成一个(5)。该校园网内
在校园网设计过程中,划分了很多VLAN,采用了VTP来简化管理。1.VTP信息只能在(1)端口上传播。2.运行VTP的交换机可以工作在三种模式:(2)、(3)、(4)。3.共享相同VLAN数据库的交换机构成一个(5)。该校园网采
完成下列命令行,对网络接口进行地址初始化配置。firewall(config)#ipaddressinside(1)(2)firewall(config)#ipaddressoutside(3)(4)以下命令针对网络服务的端口配
从网络拓扑图中可以看出该校园网采用了分层设计结构,回答以下问题:1.交换机按照所处的层次和完成的功能分为三种类型:核心交换机、汇聚交换机和接入交换机。下表是学校采购的三种交换机,请根据交换机的技术指标确定交换机的类型。在答题纸对应的解答栏内
在控制面板的“添加/删除程序”对话框中选择(1),然后进入“应用程序服务器”选项,在(2)组件复选框中选择“文件传输协议(FTP)服务”,就可以在Windows2003中安装FTP服务。(1)A.更改或删除程序B.添加新程序C.添加/删除
1.路由器第一次设置时,必须通过Console口连接运行终端仿真软件的计算机进行配置,此时终端仿真程序设置的波特率应为(1)b/s。2.路由器有多种配置模式,请根据以下命令提示状态,判断路由器处于何种配置模式下。Router(Config)
随机试题
我国进入全面建设社会主义历史时期的标志是()
客户获得招标服务所需费用的合理程度可通过招标服务质量的()来度量。
局域网常用的设备是:
(1)(7)
下列句子中,哪一句是兼语句?()
《纲要》提到的五大领域中,每个领域都可以提炼出一个关键的能力,如健康自我保护能力;语言_______能力;社会_______能力;科学_______能力;艺术_______能力。
toputone’sshouldertothewheel
巩固和发展公有制经济,还要努力寻找能够极大促进生产力发展的公有制实现形式。所有制的实现形式要解决的是发展生产力的组织形式和经营方式问题,它不具有“公”与“私”、“社”与“资”的区分。对公有制实现形式的正确理解是
Itisjustoneexampleofthegrowingconcernovertheincreasingpowerconsumptionandenvironmentalimpactofcomputers.Astu
在多继承中,公有派生和私有派生对于基类成员在派生类中的可访问性与单继承的规则( )。
最新回复
(
0
)