1、软件水平考试中级软件设计师上午(基础知识)历年真题试卷汇编 10及答案与解析 1 (2013年上半年试题 43)如图 10 7所示,描述一些人 (Person)将动物 (Animal)养为宠物 (Pet)的是图 _。( A) ( B) ( C) ( D) 1 (2013年上半年上午试题 44 47)_(44)设计模式能使一个对象的状态发生改变时通知所有依赖它的监听者。 _(45)设计模式限制类的实例对象只能有一个。适配器 (Adapter)设计模式可以用于 _(46)。用丁 一个对象添加更多功能而不适用子类的是 _(47)设计模式。 2 (44) ( A)责任链 (Chain of Respo
2、nsibility) ( B)命令 (Command) ( C)抽象工厂 (Abstract Factory) ( D)观察者 (Observer) 3 (45) ( A)原型 (Prototype) ( B)工厂方法 (Factory Method) ( C)单例 (Singleton) ( D)生成器 (Builder) 4 (46) ( A)将已有类的接口转换成和目标接口兼容 ( B)改进系统性能 ( C)将客户端代码数据转换成目标接口期望的合适的格式 ( D)使所有接口不兼容类可以一起工作 5 (47) ( A)桥接 (Bridge) ( B)适配器 (Adapter) ( C)组合
3、(Composite) ( D)装饰器 (Decorator) 6 (2012年下半年上午试题 37)在面向对象技术中,对象具有以下特性:_。 清晰的边界 良好定义的行为 确定的位置和数量 可扩展性 ( A) ( B) ( C) ( D) 6 (2012年下半年上午试题 38、 39)在面向对象技术中, _(38)说明一个对象具有多种形态, _(39)定义超类与子类之间的关系。 7 (38) ( A)继承 ( B)组合 ( C)封装 ( D)多态 8 (39) ( A)继承 ( B)组合 ( C)封装 ( D)多态 9 (2012年下半年上午试题 40)如果要表示待开发软件系统中软件组件与硬件
4、之间的物理关系,通常采用 UML中的 _。 ( A)组件图 ( B)部署图 ( C)类图 ( D)网络图 10 (2012年下半 年上午试题 41)对于场景:一个公司负责多个项目,每个项目(Project)由一个员工 (Employee)团队 (Team)来开发。图 10 8所示 UMl概念图中,_最适合描述这一场景。( A)图 A ( B)图 B ( C)图 C ( D)图 D 11 (2012年下半年上午试题 42)UML中接口可用于 _。 ( A)提供构造型 (stereotype)名称为 interface的具体类 ( B) Java和 C+程序设计中,而 C#程序设计中不支持 ( C
5、)定义可以在多个类中重用的可执行逻 辑 ( D)声明对象类所需要的服务 12 (2012年下半年上午试题 43)图 10 9所示活动图中可以同时执行的活动是_。( A) a44和 a66 ( B) a22、 a33和 a44 ( C) a11和 a77 ( D) a66和 a77 12 (2012年下半年上午试题 44 46)每种设计模式都有特定的意图。 _(44)模式使得一个对象在其内部状态改变时通过调用另一个类中的方法改变其行为,使这个对象看起来如同修改了它的类。图 10 10是采用该模式的有关 TCP连接的结构图实例。该模式的核心思想是引 入抽象类 _(45)来表示 TCP连接的状态,声
6、明不同操作状态的公共接口,其子类实现与特定状态相关的行为。当一个 _(46)对象收到其他对象的请求时,它根据自身的当前状态做出不同的反应。13 (44) ( A)适配器 (Adapter) ( B)命令 (Command) ( C)观察者 (Observer) ( D)状态 (State) 14 (45) ( A) TCPConnection ( B) state ( C) TCPState ( D) TCPEstablished 15 (46) ( A) TCPConnection ( B) state ( C) TCPState ( D) TCPEstablished 16 (2012年下
7、半年上午试题 47)欲使类 A的所有使用者都使用 A的同一个实例,应_。 ( A)将 A标识为 final ( B)将 A标识为 abstract ( C)将单例 (Singleton)模式应用于 A ( D)将备忘 (Memoto)模式应用于 A 17 (2012年上半年上午试题 37)面向对象技术中,组合关系表示 _。 ( A)包与其中模型元素的关系 ( B)用例之间的一种关系 ( C)类与其对象的关系 ( D)整体与其部分之间的一种关系 18 (2012年上半年上午试题 38)以下关于封装在软件复用中所充当的角色的叙述,正确的是 _。 ( A)封装使得其他开发人员不需要知道一个软件组织内
8、部如何工作 ( B)封装使得软件组织更有效地工作 ( C)封装使得软件开发人员不需要编制开发文档 ( D)封装使得软件组件开发更加容易 19 (2012年上半年上午试题 39)在有些程序设计语言中,过程调用和响应调用需执行的代码的绑定直到运行时才进行,这种绑定 称为 _。 ( A)静态绑定 ( B)动态绑定 ( C)过载绑定 ( D)强制绑定 19 (2012年上半年上午试题 40 43)UML序列图是一种交互图,描述了系统中对象之间传递消息的时间序列。其中,异步消息与同步消息不同, _(40)。图10 11 中 _(41)表示一条同步消息, _(42)表示一条异步消息, _(43)表示一条返
9、回消息。 20 (40) ( A)异步消息并不引起调用者终止执行而等待控制权的返回 ( B)异步消息和阻塞调用有相同的效果 ( C)异步消息是同步消息的响应 ( D)异步消息和同步消息一样等待返回消息 21 (41) ( A) 1 ( B) 2 ( C) 3 D4 22 (42) ( A) 1 ( B) 2 ( C) 3 ( D) 4 23 (43) ( A) 1 ( B) 2 ( C) 3 ( D) 4 24 (2012年上半年上午试题 44)设计模式根据目的进行分类,可以分为创建型、结构型和行为型三种。其中结构型模式用于处理类和对象的组合。 _模式是一种结构型模式。 ( A)适配器 (Ad
10、apter) ( B)命令 (Command) ( C)生成器 (Builder) ( D)状态 (State) 24 (2012年上半年上午试题 45 47)设计模式中的 _(45)模式将对象组合成树形结构以表示 “部分一整体 ”的层次结构,使得客户对单个对象和组合对象的使用具有一致性。图 10 12为该模式的类图,其中, _(46)定义有子部件的那些部件的行为;组合部件的对象由 _(47)通过 Component提供的接口操作。25 (45) ( A)代理 (Proxy) ( B)桥接器 (Bridge) ( C)组合 (Composite) ( D)装饰器 (Decorator) 26
11、(46) ( A) Client ( B) Component ( C) Leaf ( D) Composite 27 (47) ( A) Client ( B) Cornponent ( C) Leaf ( D) Composite 软件水平考试中级软件设计师上午(基础知识)历年真题试卷汇编 10答案与解析 1 【正确答案】 A 【试题解析】 该题考查 UML中类图的表示,由 Person类和 Animal类之间一比多的关系以及类图的画 法可知选项为 A。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 2 【正确答案】 D 【试题解析】 观察者模式 (有时又被称为发布一订阅模式、模
12、型一视图模式、源一收听者模式或从属者模式 )是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依丁它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而 且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。 适配器模式 (有时候也称包装样式或者包装 )将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。 装饰器模式就是创
13、建一个新类为某一个类动态添加新功能或增强原有的功能。 【知识模块】 面向对象技术 3 【正确答案】 C 【知识模块】 面向对象技术 4 【正确答案】 A 【知识模块】 面向对象技术 5 【正确答案】 D 【知识模块】 面向对象技术 6 【正确答案】 C 【试题解析】 对象是类的实例,具有清晰的边界、良好定义的行为和可扩展性。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 7 【正确答案】 D 【试题解析】 在面向对象技术中,不同的对象收到同一消息可以产生完全不同的结果,这一现象叫作多态,这说明一个对象具有多种形态;继承是父类和子类之间共享数据和方法的机制,这是类之间的一种关系。 【知
14、识模块】 面向对象技术 8 【正确答案】 A 【知识模块】 面 向对象技术 9 【正确答案】 B 【试题解析】 UML提供了多种视图,其中部署图展现了运行处理节点以及其中构件的配置。部署图给出了体系结构的静态实施视图,表示待开发软件系统中软件组件与硬件之间的物理关系,通常在系统实施阶段使用。 【知识模块】 面向对象技术 10 【正确答案】 B 【试题解析】 在 UML图中,关联表示对象之间的连接,在关联上可以标注重复度和角色。图 C中 Company和 Project之间的关系和重复度不正确;图 D中Company和 Project之间不应存在泛化关系;只 有图 B最适合描述题目描述的场景。
15、【知识模块】 面向对象技术 11 【正确答案】 D 【试题解析】 接口是描述类的部分行为的一组操作,也是一个类提供给另一个类的一组操作。和类的不同之处在于,接口只是一组操作,没有属性。要将类和接口区分开来,一种办法是使用构造型 interface,把它放在矩形框中接口的名字之上,另一种办法是接口的名字以大写字母 “1”开头。接口可用于 Java和 C#程序设计中,而 C+程序设计中不支持。 【知识模块】 面向对象技术 12 【正确答案】 B 【试题解析】 活动图的主要要素包括初始节点、活动节点、活动终点、转换、分支与监护条件、分叉与汇合等。在该活动图中, a11 a77为活动节点, a11后的
16、垂直粗线段为分叉线,又称同步线,其后的多个活动可以并发执行,因此 a22、a33和 a44可以同时执行。图中的菱形条件为分支条件,用来表示满足某条件时执行某个活动。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 13 【正确答案】 D 【试题解析】 状态 (State)模式允许一个对象在其内部状态改变时改变它的行为,使这个对象看起来如 同修改了它的类。状态模式需要对每一个系统可能取得的状态创立一个状态类的子类,当系统的状态发生变化时,系统便改变所选的子类。在图 10 10中, TCPConnection为情景类,定义客户应用程序感兴趣的接口,维护一个具体状态 (TCPEstablis
17、hed、 TCPListen和 TCPCIosed)子类的实例对象。TCPState为抽象状态类,定义一个接口用来封装与 TCPConnection的一个特别状态 (State)相关的行为。 TCPEstablished、 TCPListen和 TCPCIosed为具体类,每一个 具体类实现了一个与 TCPConnection的状态相关的行为。 【知识模块】 面向对象技术 14 【正确答案】 C 【知识模块】 面向对象技术 15 【正确答案】 A 【知识模块】 面向对象技术 16 【正确答案】 C 【试题解析】 单例 (Singleton)模式用于确保某个类只有一个实例,且自行实例化,并向整个
18、系统提供该实例。单例模式为一个面向对象的应用程序提供了对象唯一的访问点,不管它实现何种功能,整个应用程序都会共享一个实例对象。 【知识模块】 面向对象技术 17 【正确答案】 D 【试题解析】 组合关系是关联关系的一种特例,体现的是一种 contains-a的关系,这种关系比聚合更强,也称为强聚合;它同样体现整体与部分间的关系,但此时整体与部分是不可分的,整体的生命周期结束也就意味着部分的生命周期结束,比如人和大脑。组合跟聚合几乎相同,唯一的区别就是 “部分 ”不能脱离 “整体 ”单独存在,也就是说, “部分 ”的生命期不能比 “整体 ”还要长。 【知识模块】 面向对象技术 18 【正确答案】
19、 A 【试题解析】 封装就是将抽象得到的数据和行为 (或功能 )相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成 “类 ”,其中数据和函数都是类的成员。封装的目的是增强安全性和简化编程,使用者不必了解具体的实现细节,而只是要通过外部接口,以特定的访问权限来使用类的成员。 【知识模块】 面向对象技术 19 【正确答案】 B 【试题解析】 绑定指的是一个方法的调用与方法所在的类 (方法主体 )关联起来。 静态绑定:在程序执行前方法已经被绑定,此时由编译器或其他连接程序实现。 动态绑定:在运行时根据具体对象的类型进行绑定。 若一种语言实现了动态绑定,同时必须提供一些机制
20、,可在运行期间判断对象的类型,并分别调用适当的方法。也就是说,编译器此时依然不知道对象的类型,但方法调用机制能自己去调查,找到正确的方法主体。不同的语言对动态绑定的实现方法是有所区别的。 【知识模块】 面向对象技术 【知识模块】 面向对象技术 20 【正确答案】 A 【试题解析】 序列图将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表 示。当对象的过程处于激活状态时,生命线是一个双道线。消息用从一个对象的生命线到另一个对象的生命线的箭头表示。箭头以时间顺序在图中从上到下排列。对于同步消息
21、,发送方在它继续之前,将等待同步消息响应。而对于异步消息,在发送方继续之前,无须等待响应的消息。 为了可读性,序列图的第一个消息总是从顶端开始,并且一般位于图的左边。然后继发的消息加入图中,稍微比前面的消息低些。为了显示一个对象 (例如,生命线 )传递一个消息给另外一个对象,画一条线指向接收对象,包括一个实心箭头(如果是一个同步调用操作 )或一个棍形箭头 (如果是一个异步信号 )。消息方法名字放置在带箭头的线上面。正在被传递给接收对象的消息,表示接收对象的类实现的一个操作方法。返回消息是可选择的。一个返回消息画作一个带开放箭头的虚线,向后指向来源的生命线,在这条虚线上面,放置操作的返回值。 【
22、知识模块】 面向对象技术 21 【正确答案】 A 【知识模块】 面向对象技术 22 【正确答案】 C 【知识模块】 面向对象技术 23 【正确答案】 B 【知识模块】 面向对象技术 24 【正确答案】 A 【试题解析】 结 构型模式包括适配器 (Adapter)模式、桥接 (Bridge)模式、组合(Component)模式、代理 (Proxy)模式、享元 (Flyweight)模式、外观 (Fagade)模式、装饰器 (Decorator)模式。命令 (Command)模式和状态 (State)模式是行为型模式,生成器 (Builder)是创建型模式。 【知识模块】 面向对象技术 【知识模块
23、】 面向对象技术 25 【正确答案】 C 【试题解析】 组合 (Component)模式将对象组合成树形结构以表示 “部分一整体 ”的层次 结构,其中的组合对象使用户可以组合基元对象以及其他对象,从而形成任意复杂的结构。类 Component为组合中的对象声明接口。类 Leaf在组合中表示叶节点对象,并在组合中定义图元对象的行为。类 Composite定义有子部件的那些部件的行为、存储子部件,并在 Component接口中实现与子部件的有关操作。类 Client通过 Component接口操纵组合部件的对象。 【知识模块】 面向对象技术 26 【正确答案】 D 【知识模块】 面向对象技术 27 【正确答案】 A 【知识模块】 面向 对象技术
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1