首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5—1所示),现要求提供基于。Dutch语言的地址信息显示接口。为了实现该要求并考虑到以后可能还会出现新的
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5—1所示),现要求提供基于。Dutch语言的地址信息显示接口。为了实现该要求并考虑到以后可能还会出现新的
admin
2017-09-13
116
问题
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5—1所示),现要求提供基于。Dutch语言的地址信息显示接口。为了实现该要求并考虑到以后可能还会出现新的语言的接口,决定采用适配器(Adapter)模式实现该要求,得到如图5—1所示的类图。
选项
答案
(1)Address*address (2)address一>street() (3)address一>zip() (4)address一>city() (5)DutchAddress*addrAdapter=new DutchAddressAdapter(addr)
解析
本题考查Adapter(适配器)模式的基本概念和应用。
Adapter模式的设计意图是,将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
Adapter模式有两种实现方式。类适配使用多重继承对一个接口与另一个接口进行匹配,其结构如图5-2所示。
对象适配器依赖于对象组合,其结构如图5-3所示。
Target定义Client使用的与特定领域相关的接口。
Client与符合Target接口的对象协同。
Adaptee定义一个已经存在的接口,这个接口需要适配。
Adapter对Adaptee的接口与Target接口进行适配。
Adapter模式适用于:
想使用一个已经存在的类,而它的接口不符合要求。
想创建一个可以复用的类,该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类)协同工作。
(仅适用于对象Adapter)想使用一个已经存在的子类,但是不可能对每一个都进行子类化以匹配他们的接口。对象适配器可以适配它的父类接口。
本题中采用对象适配器,题中类DutchAdddressAdapter对应图5-3中的Adapter、DutchAddress对应图5-3中的Target、Address对应图5-3中的Adaptee。
由图5-3可知,在Adapter中应该有一个Adaptee的对象,因此空(1)处应该填写的是Address的对象:Address*address。
类DutchAddress的实现采用了C++中的抽象类,作为其子类DutchAddressAdapter,必须对DutchAddress中的3个纯虚拟函数进行重置,所以空(2)~(4)是在考查这3个纯虚拟函数在子类中的实现方式。由图5-3可知,Adapter中方法的实现方式还是要借助于Adaptee中所提供的行为,也就是说,DutchAddressAdapter中3个纯虚拟函数的实现与Address是密不可分的。由此可知,空(2)~(4)分别应填入:address一>street()、address一>zip()和address一>city()。
第(5)空考查Adapter模式的使用。这里调用普通函数testDutch来进行测试,这个函数要求传递DutchAddmss类型的参数,并且给出了实参的名字:addrAdatper。因此第(5)空应该填写的是addrAdapter的创建语句,这里需要使用到DutchAddress的构造函数。因此第(5)空应填写:DutchAddress*addrAdapter=new DutchAddressAdapter(addr)。
转载请注明原文地址:https://www.kaotiyun.com/show/hKDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
请回答以下有关组网的问题1~3。【说明】某公司规模扩大,既要考虑保证目前土建装修的效果不被破坏,又要满足网络扩容和企业工作实际需求,同时还要保证投资不要过大,经过深入分析和研究对比,决定采用无线局域网组网来解决网络扩容的问题,网络拓扑结构如
在Internet上捕获并分析图8-16所示的网络中两个内部网络经由Internet通信的L2TPv2数据帧,请从以下4个选项中选择正确的答案填写到图8-17的(1)~(4)空缺处的相应位置。【供选择的答案】A.L2TPv2头
在Internet上捕获并分析图8-16所示的网络中两个内部网络经由Internet通信的L2TPv2数据帧,请从以下4个选项中选择正确的答案填写到图8-17的(1)~(4)空缺处的相应位置。【供选择的答案】A.L2TPv2头
L2TP协议是一种基于(1)协议的二层隧道协议,它结合了Cisco的L2F和MicrosoftPPTP的优点。该协议报文在传输层封装(2)协议之上,为了保证传输的可靠性,L2TP协议对控制报文采取了(3)机制,并要求tunne1对端设备在隧道(tunne
如果在网络设计过程中划分了很多VLAN,则可采用VTP来简化其管理。交换机管理IP地址只能创建在(1)中,而VTP信息只能在(2)端口上传播。共享相同VLAN数据库的交换机构成一个(3)。不同交换机平台、不同的IOS版本支持的VLAN数量不同,从图6-18
非对称数字用户线(AsymmetricDigitalSubscriberLine,ADSL)是一种利用现有的传统电话线路高速传输数字信息的技术。ADSL技术可以充分利用现有铜线网路,只要在用户线路两端加装ADSL设备即可为用户提供服务。ADSL系统构
阅读以下关于ADSL宽带接入Internet的技术说明,请结合网络拓扑结构图,根据要求回答问题1至问题5。【说明】某边远山区的行政机关需要与该地区的市委行政机关进行网络互连,提高行政办事效率,并要求与Internet网互连,从而打开该山区原信息
某公司申请到的IP地址为193.136.99.0,如图7-4所示,为了便于管理,需建立4个子网(要求每个子网的掩码必须相同),请回答如下问题。
请说出图9-1的拓扑结构名称与特点。PC2、PC4与PCI、PC3、PC5要连网且能相互访问,需要增添什么设备?
随机试题
中葡两国政府签署中葡关于澳门问题的联合声明的时间是【】
以下时期中小儿生长发育速度最快的是
三级医院药学部门负责人应
关于急性肾炎的治疗,错误的是
关于咳嗽的临床表现与分型A、感冒所伴随的咳嗽B、百日咳C、肺结核D、肺炎所伴随的咳嗽E、支气管病变所伴随的咳嗽起病突然,伴随有高热、寒战、胸痛、吐铁锈色痰
剪刀撑斜杆与地面的倾角宜为()之间。
不准用不符合财务会计制度规定的凭证顶替库存现金。
对于合同备案的变更,已经海关登记备案的加工贸易合同,其品名、规格、金额、数量、加工期限、单损耗、商品编码等发生变化的,须向直属海关办理合同备案变更手续,开设台账的合同还须变更台账。
OvershadowedbyrowsoverNigeriaandLockerbie,theCommonwealth’sattemptstorefocusontradeandinvestment—themaintheme
TheformersupervisortookpleasureinwritingaletterofrecommendationforMr.Chungsincehe_______tookcareofalltheass
最新回复
(
0
)