首页
登录
从业资格
某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5-1所示)
某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5-1所示)
免费题库
2022-08-02
97
问题
某软件系统中,已设计并实现了用于显示地址信息的类Address(如图5-1所示),现要求提供基于Dutch语言的地址信息显示接口。为了实现该要求并考虑到以后可能还会出现新的语言的接口,决定采用适配器(Adapter)模式实现该要求,得到如图5-1所示的类图。
图5-1适配器模式类图【C++代码】#include<iostream>using namespace std;class Address{public:void stree( ){/*实现代码省略*/}void zip( ){/*实现代码省略*/}void city( ){/*实现代码省略*/}∥其他成员省略};class DutchAddress{public:virtual void straat( )=0;virtual void postcode( )=0;virtual void plaats( )=0;//其他成员省略};class DutchAddressAdapter:public DutchAddress{private:(1);public:DutchAddressAdapter(Address*addr){address=addr;}void straat( ){(2);}void postcode( ){(3);}void plaat( ){(4);}//其他成员省略};void testDutch(DutchAddress*addr){addr->straat( );addr->postcode( );addr->plaats( );}int main( ){Address*addr=new Address( );(5);cout<<"\n The DutchAddress\n"<<endl;testDutch(addrAdapter);return 0;}
选项
答案
解析
(1)Address*address;
(2)address->street();
(3)address->zip();
(4)address->city();
(5)DutchAddress*addrAdapter=new DutchAddressAdaptor(addr);
本题考查的是面向对象程序设计,结合设计模式。本题涉及的设计模式是适配器。
对于代码填空,可以参照类图和代码上下文补充。
首先理清类与类之间的继承关系,再根据上下文填写。
对于第(1)空,DutchAddressAdapter继承了DutchAddress方法,根据下面的同名构造函数可知,该类定义了一个名叫address的参数,而根据代码上下文可以,address的类型为Address。本空应该填写Address*address。
第(2)(3)(4)空是接口转换的具体实现,而在DutchAddressAdapter涉及的方法,可以从类图中找到,分别是straat(),postcode(),plaats(),适配器的目的是接口转换,即用这些方法分别展现原有Address中的street()、zip()、city()方法,因此这3个空分别填写address->street()、address->zip()、address->city()。
对于第(5)空,根据上下文最终调用testDutch方法的对象是addrAdapter,而此处是将原有的Address对象addr转换为接口对象,因此此处填写
DutchAddress*addrAdapter=new DutchAddressAdapter(addr)。
转载请注明原文地址:http://tihaiku.com/congyezige/2410681.html
本试题收录于:
中级 软件设计师题库软件水平考试初中高级分类
中级 软件设计师
软件水平考试初中高级
相关试题推荐
以下关于程序设计语言的叙述中,不正确的是()。A.脚本语言中不使用变量和函数
()是在程序设计过程中进行编码的依据。A.程序流程图 B.数据流图 C.E
更适合于开发互联网络应用的程序设计语言是()。A.SQL B.Java C
程序设计语言通常划分为高级语言和低级语言。机器语言和汇编语言属于低级语言,它们的
在高速缓冲存储器(Cache)-主存层次结构中,地址映像以及和主存数据的交换由(
设有一个16K×32位的存储器(即每个存储单位含32位),则其存储单元的地址宽度
内存按字节编址。若用存储容量为32Kx8bit的存储器芯片构成地址从AOOOOH
总线的带宽是指()A.用来传送数据、地址和控制信号的信号线总数 B.总线能同
在存储体系中位于主存与CPU之间的高速缓存(Cache)用于存放主存中部分信息的
管理信息系统成熟的标志是()。A.计算机系统普遍应用 B.广泛采用数据库技术
随机试题
Whenahurricaneisabouttooccur,theNationalWeatherBureauissuesawarning
起源于举世闻名的道家哲学的道教是中国的本土宗教,建立于东汉时期(公元24~220年),已有1800多年的历史。在封建社会时期,和佛教一样,道教对中国的
患者,女,49岁,近一年来每于醒后即觉腹部疼痛、肠鸣,随即泄泻,泻后则安,伴有完
(护士题)你是怎么看待这个职业的?
Whenastudentsaid"YesterdayIgoedto
下列属于胰多肽族的激素是A.胰岛素样生长因子B.胃泌素C.促胰液素D.胰岛素E.
由于热量和营养素不足,只能短期使用的饮食是A、半流质饮食 B、高蛋白饮食 C
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
机体内环境的稳态是指 A.细胞内液理化性质保持不变B.细胞外液理化性质保持不
A.抗酸药 B.质子泵抑制剂 C.胃黏膜保护剂 D.解痉、镇痛药 E.组
最新回复
(
0
)