首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL SerVer和Access两种数据库以及系统中的数据库表Depanment为例,其类图如图17—3所示。 [Java代码] import java.util
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以SQL SerVer和Access两种数据库以及系统中的数据库表Depanment为例,其类图如图17—3所示。 [Java代码] import java.util
admin
2014-11-13
58
问题
现欲开发一个软件系统,要求能够同时支持多种不同的数据库,为此采用抽象工厂模式设计该系统。以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至问题8。[说明]Linux系统开机引导时首先启动内核,由内核检查和初始化硬件设备,载入设备的驱动程序模块,安装root文件系统,然后内核将启动一个名为init的进程。在init运行完成并启动其他必要的后续进程后,
阅读以下说明,回答问题1至问题5。[说明]某小区采用HFC接入Internet的解决方案进行网络设计,网络结构如下图所示。
IIS安装的硬盘分区最好选用NTFS格式,是因为(1)和(2)。A.可以针对某个文件或文件夹给不同的用户分配不同的权限B.可以防止网页中的Applet程序访问硬盘中的文件C.可以使用系统自带的文件加密系统对文件或文件夹进行加密
在“管理工具”中运行“管理IP筛选器列表”,创建一个名为“SNMP消息”的筛选器。在如图12-3所示的“IP筛选器向导”中指定IP通信的源地址,下拉列表框中应选择(1);在如图12-4中指定IP通信的目标地址,下拉列表框中应选择(2)。在图
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。设置技术部和销售部的主机网络参数后,如果两个子网间的主机不能通信,用(13)命令来测试数据包是否能够到达网关计算机。如果数据包可以达到
销售部的网络号是(1),广播地址是(2):技术部的网络号是(3),广播地址是(4);每个子网可用的IP地址有(5)个。Linux网关计算机有两个网络接口(eth0和eth1),每个接口与对应的子网相连接。该计算机/etc/sysconfig,/
请阅读下列SwitchA的配置信息,并在(1)~(5)处解释该语句的作用。Switch>enable(进入特权模式)Switch#configterminal(进入配置模式)Switch(config)#hostnameSwi
请阅读下列SwitchA的配置信息,并在(1)~(5)处解释该语句的作用。Switch>enable(进入特权模式)Switch#configterminal(进入配置模式)Switch(config)#hostnameSwi
阅读以下说明,回答问题1至问题5。【说明】某网络拓扑结构如图3-1所示,DHCP服务器分配的地址范围如图3-2所示。
1.路由器第一次设置时,必须通过Console口连接运行终端仿真软件的计算机进行配置,此时终端仿真程序设置的波特率应为(1)b/s。2.路由器有多种配置模式,请根据以下命令提示状态,判断路由器处于何种配置模式下。Router(Config)
随机试题
什么是行业词语?试举出十个课堂教学用语。
下列哪项不会引起发汗速度加快
A、炔雌醇B、他莫昔芬C、阿那曲唑D、丙酸睾酮E、氟他胺属于雌激素受体拮抗剂的抗肿瘤药是
A村的甲向B村的乙买木材,当初没有说明价格,后来到了交货和付款时木材价格上涨,甲和乙对价格有异议相持不下,这时,价格应当按照()。
主要依靠提高生产要素生产率来实现经济增长的方式是()增长方式。
根据我国《预算法》的规定,不属于国务院财政部门预算职权的是()。
如果被审计单位在审计实施阶段提出变更业务,以下说法中,正确的是()。
属于德国第三大城市慕尼黑的景点有()。
教师仪表是教师内心修养、品格气质的流露,一般不直接传达与教育内容相关的信息,但也是影响教育活动和教育效果的一个因素。()
有3个关系R、S和T如下:则关系T是由关系R和S通过某种操作得到的,该操作为()。
最新回复
(
0
)