[计算机类试卷]软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷81及答案与解析.doc
《[计算机类试卷]软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷81及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷81及答案与解析.doc(30页珍藏版)》请在麦多课文档分享上搜索。
1、软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷 81及答案与解析 1 在面向对象技术中,有多种不同的多态形式,其中参数多态和 (1)称为通用多态。 ( A)重置多态 ( B)过载多态 ( C)隐含多态 ( D)包含多态 2 以下描述中,不正确的是 (2)。 ( A)类是对象的抽象,对象是类的实例 ( B)类是一组具有相同属性和方法的对象的集合 ( C)每个类都可以被实例化 ( D)对象是指一组属性及这组属性上的专用操作的封装体 3 在 UML的通用机制中, (3)是系统中遵从一组接口规范且付诸 实现的物理、司替换的软件模块。 ( A)包 ( B)类 ( C)接口 ( D)构件 4
2、UML的事物是对模型中最具有代表性的成分的抽象, (4)是模型的动态部分,描述了跨越时间和空间的行为。 ( A)结构事物 ( B)分组事物 ( C)行为事物 ( D)注释事物 5 下列有关面向对象方面的描述,不正确的是 (5)。 ( A)面向对象要求针对接口编程,而不要针对实现编程 ( B)接口与实现不可分割 ( C)设计职责单一的类 ( D)尽量使用已有的类库 6 已知两个类 O、 P,类 O中定义了一个私有方法 F1和 一个公有方法 F2;类 P中定义了一个公有方法 F3,类 P为类 O的派生类。它们的继承方式如下所示。 class P: private O ; 在关于类 P的描述中正确的
3、是 (6)。 ( A)类 P的对象可以访问 F1,但不能访问 F2 ( B)类 P的对象可以访问 F2,但不能访问 F1 ( C)类 P的对象既可以访问 F1,也可以访问 F2 ( D)类 P的对象既不能访问 F1,也不能访问 F2 7 下列关于面向对象 ( A)组织并确定对象关系是面向对象设计阶段的活动 ( B)发现并确定业务对象是面向对象分析阶段的活动 ( C) 建模系统功能是面向对象分析阶段的活动 ( D)确定对象间的通信方式是面向对象设计阶段的活动 8 已知 f1, f2是同一个类的两个成员函数,但 f1不能调用 f2,说明 (8)。 ( A) f1、 f2都是静态成员函数 ( B)
4、f1是静态成员函数, f2不是静态成员函数 ( C) f1不是静态成员函数, f2是静态成员函数 ( D) f1、 f2都不是静态成员函数 9 在 UML的 5大系统视图中, (9)是可执行线程和进程作为活动类的建模。 ( A)逻辑视图 ( B)进程视图 ( C)部署视图 ( D)用例视图 10 以下 关于 C+中构造函数和析构函数的描述中,错误的是 (10)。 ( A)构造函数的函数名必须与类名相同 ( B)构造函数的返回类型是 void类型 ( C)析构函数无形参,也不可被重载 ( D)一个类只能有一个析构函数,但可以有多个构造函数 11 某 ATM自动取款机系统中, “查询余额 ”和 “
5、取现 ”两个用例都需要检查用户的验证码是否正确,为此定义一个通用的用例 “核查验证码 ”。那么用例 “查询余额 ”和“取现 ”与用例 “核查验证码 ”之间是 (11)。 ( A)包含关系 ( B)扩展关系 ( C)泛化关系 ( D)关联关系 12 在 UML的建模机制中, (12)描述了对象之间动态的交互关系,还描述了交互的对象之间的静态链接关系,即同时反映系统的动态和静态牲。 ( A)活动图 ( B)顺序图 ( C)状态图 ( D)协作图 13 在常见的 UML图中,下列属于结构性视图的是 (13)。 对象图 用例图 包图 定时图 构件图 部署图 类图 状态图 ( A) ( B) ( C)
6、( D) 14 遵守面向对 象设计原则可以有效地提高系统的复用性和可维护性。应用 (14)原则可扩展已有的系统,并为之提供新的行为。 ( A)开闭 ( B)里氏替换 ( C)依赖倒置 ( D)接口隔离 15 以下关于设计模式的描述中,不正确的是 (15)。 ( A)使用设计模式的主要目的是复用成功的设计和体系结构 ( B)设计模式具有适应需求变化的优点 ( C)设计模式可以改善代码的平台可移植性 ( D)设计模式可以减少方案出错的可能性 16 (16)主要职责是存储和管理系统内部的信息,它也可以有行为,甚至很复杂的行为。 ( A) 边界类 ( B)存储类 ( C)抽象类 ( D)实体类 17
7、(17)使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 ( A) Adapter(适配器 ) ( B) Iterator(迭代器 ) ( C) Prototype(原型 ) ( D) Observer(观察者 ) 18 (18)是指同一个操作作用于不同的对象可以有不同的解释,产生不同的执行结果。 ( A)封装 ( B)泛化 ( C)继承 ( D)多态 19 有两个类 X和 Y,那么以下描述中,不正确的是 (21)。 ( A)修改 X会引起 Y的变化 ,那么 X和 Y是一种依赖关系 ( B) X表示一般,而 Y表示特殊,那么 X和 Y是一种泛化关系 ( C) X是整体, Y是部分,且
8、 X和 Y同生命周期,那么它们是组合关系 ( D) X是整体, Y是部分,且 X和 Y同生命周期,那么它们是聚合关系 20 (22)除了提供可被应用程序调用的类以外,还基本实现了一个可执行的架构。 ( A)框架 ( B)标准库 ( C)函数库 ( D)类库 21 当 (23)时,用例是捕获系统需求最好的选择。 ( A)系统具有很少的用户 ( B)系统具有很少的接口 ( C)系统算法复杂,功能单一 ( D)系统有很多参与者 22 UML中接口可用于 (24)。 ( A)提供构造型 (stereotype)名称为 tefface的具体类 ( B) Java和 C+程序设计中,而 C程序设计中不支持
9、 ( C)定义可以在多个类中重用的可执行逻辑 ( D)声明对象类所需要的服务 23 下列模式中,属于行为模式的是 (25)。 ( A)原型模式 ( B)访问者模式 ( C)桥接模式 ( D)以上都不是 24 对于场景:一个公司负责多个项目,每个项目 (Project)由一个员工 (Employee)团队 (Team)来开发。下列 UML概念图中, (26)最适合描述这一场景。( A)图 A ( B)图 B ( C)图 C ( D)图 D 25 在面向对象技术中,对象具有以下特性: (27)。 清晰的边界 良好定义的行为 确定的位置和数量 可扩展性 ( A) ( B) ( C) ( D) 26
10、UML序列图是一种交互图,描述了系统中对象之间传递消息的时间次序。其中,异步消息与同步消息不同,异步消息并不引起调用者终止执行而等待控制权的返回。图 5-2中 (28)分别表示一条同步消息和一条异步消息。( A) 1和 4 ( B) 2和 3 ( C) 1和 3 ( D) 2和 4 26 (19)设计模式将抽象部分与它的实现部分相分离,使它们都可以独立地变化。图5-1为该设计模式的类图,其中, (20)用于定义实现部分的接口。27 (19) ( A) Singleton(单件 ) ( B) Bridge(桥接 ) ( C) Composite(组合 ) ( D) Facade(外观 ) 28
11、(20) ( A) Abstraction ( B) ConcretelmplementorA ( C) ConcretelmplementorB ( D) Implementor 28 (29)设计模式可以动态地给一个对象增加其他职责,而且这种方式比生成子类实现更为灵活。图 5-3所示为该设计模式的类图,其中, (30)是装饰抽象类,维护一个内有的 Component。29 (29) ( A) Flyweight(享元 ) ( B) Proxy(代理 ) ( C) Strategy(策略 ) ( D) Decorator(装饰 ) 30 (30) ( A) Component ( B) Co
12、ncrete Component ( C) Decorator ( D) Concrete DecoratorA 软件水平考试(中级)软件设计师上午(基础知识)试题模拟试卷 81答案与解析 1 【正确答案】 D 【试题解析】 在面向对象技术中,对象在收到消息后要予以响应,不同的对象收到同一消息可产生完全不同的结果,这一现象称为多态。多态有多种不同的形式,其中参数多态和包含多态称为通用多态,过载多态和强制多态成为特定多态。 参数多态应用比较广泛,被称为最纯的多态。这是因为同一对象、函数或过程能以一致的形式用于不同的类型 。包含多态最常见的例子就是子类型化,即一个类型是另一类型的子类型。过载多态是
13、同一变量被用来表示不同的功能,通过上下文以决定一个类所代表的功能。即通过语法对不同语义的对象使用相同的名,编译能够消除这一模糊。强制多态是通过语义操作把一个变元的类型加以变换,以符合一个函数的要求,如果不做这一强制性变换将出现类型错误。类型的变换可在编译时完成,通常是隐式地进行,当然也可以在动态运行时来做。 【知识模块】 面向对象方法 2 【正确答案】 C 【试题解析】 本题主要考查类和对象的概念。 在计算机 系统中,对象是指一组属性及这组属性上的专用操作的封装体,它由对象标识 (名称 )、属性 (状态、数据、成员变量,也可以是另一个对象 )和服务 (操作、行为、方法 )三个要素组成。对象是系
14、统中用来描述客观事物的一个实体,它们被封装为一个整体,以接口的形式对外提供服务。 而类是一组具有相同属性和方法的对象抽象。一个类中的每个对象都是这个类的一个实例。在系统分析和设计时,通常要把注意力集中在类上,而不是具体的对象上。每个类一般都有实例,没有实例的类是抽象类。抽象类不能被实例化 (不能用 new关键字去产生对象 ),抽象方法 只需声明,而无须实现。是否建立了丰富的类库是衡量一个 OO程序设计语言成熟与否的重要标志之一。 【知识模块】 面向对象方法 3 【正确答案】 D 【试题解析】 在 UML中,把组织模型的组块称为包。包是用于把元素组织成组的通用机制,有助于组织模型中的元素,使得对
15、它们的理解变得更容易,也使得用户能够控制对包的内容的访问,从而控制系统体系结构中的接缝。 接口是描述某个类或构件的一个服务操作集。也就是说,接口是类或构件对其他类或构件提供的功能、操作、行为。 构件是系统中遵从一组接口且提 供实现的物理、可替换的部分。可以利用构件为可能存在于结点上的物理事物 (如可执行体、库、表、文件及文档等 )进行建模。一般情况下,构件表示将类、接口和协作等逻辑元素打包而形成的物理模块。好的构件应采用定义良好的接口来定义灵活的抽象,以便将来可以用更新且接口兼容的构件来替换较旧的构件。 【知识模块】 面向对象方法 4 【正确答案】 C 【试题解析】 本题考查面向对象建模语言中
16、的事物概念。 在 UML中,有 4种事物: (1)结构事物是 UML模型中的名词。它们通常是模型的静态部分,描述概 念或物理元素。 (2)行为事物是 UML模型的动态部分。它们是模型中的动词,描述了跨越时间和空间的行为。 (3)分组事物是 UML模型的组织部分。它们是一些由模型分解成的 “盒子 ”。 (4)注释事物是 UML模型的解释部分。这些注释事物用来描述、说明和标注模型的任何元素。 【知识模块】 面向对象方法 5 【正确答案】 B 【试题解析】 本题主要考查面向对象的基本知识。 “针对接口编程,而不是针对实现编程 ”是面向对象设计的 7大原则之一,遵循此原则有以下几个方面的好处。 (1)
17、使用者不必知道其使用对象的具体所属类。 (2)使用者无须知道特定类,只需知道它们所期望的接口。 (3)一个对象可以很容易地被 (实现了相同接口的 )另一个对象所替换。 (4)对象间的连接不必硬绑定到一个具体类的对象上,因此增加了灵活性。 另外,在这种方式下,接口与实现是可以分割的,这样利于变化,也符合面向对象的根本意图 (便于需求的改变 )。 设计职责单一的类也是 7大设计原则中的一个,因为如果一个类有一个以上的职责,这些职责就耦合在了一起,这会导致脆弱的设计。比 如,当一个职责发生变化时,就可能会影响其他的职责。另外,多个职责耦合在一起,也会影响程序的复用性。 类库,简单地说,就是很多类的集
18、合,而这些类都是已经定义好的了,在编程时,可以直接使用,使用类库的好处主要有两个:一个是可以减少出差的概率;另外一个是可以节省大量的时间和经历。因此,如果有类库可供使用,肯定是要尽量使用已有的类库。 【知识模块】 面向对象方法 6 【正确答案】 D 【试题解析】 本题主要考查继承中的一些基本知识。 在 C+中,类的继承主要有如下 3种方式: (1)公有继承 (public)。公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的。因此在公有继承时,派生类的对象可以访问基类中的公有成员,派生类的成员函数可以访问基类中的公有成员和保护成员。
19、(2)私有继承 (private)。私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被这个派生类的子类所访问。 (3)保护继承 (protected)。保护继承的特点是基类的所有公有成员和保护成员都成为派生类的保护成员,并且只能被它的派生类成员函数或友元访问 ,基类的私有成员仍然是私有的。 总的来说,基类成员对派生类的对象来说,是否能被访问,就要看基类的成员在派生类中变成了什么类型的成员。例如,私有继承时,基类的公有成员和私有成员都变成了派生类中的私有成员,因此对于派生类中的对象来说基类的公有成员和私有成员就是不可见的。 在本题中,由于类 P是对类 O的私有继承,因此将
20、类 O的公有成员和私有成员都变成了派生类中的私有成员,因此类 P的对象无法访问 F1,也无法访问 F2。 【知识模块】 面向对象方法 7 【正确答案】 A 【试题解析】 本题考查面向对象分析与 设计的活动。 面向对象分析基于用例模型,通过对象建模记录确定的对象、对象封装的数据和行为以及对象之间的关系。面向对象分析包括 3个活动:建模系统功能,发现并且确定业务对象,组织对象并确定其关系。 面向对象设计是在分析对象模型的基础上,设计各个对象、对象之间的关系 (如层次关系、继承关系等 )和通信方式 (如消息模式 )等,其主要作用是对 OOA的结果作进一步的规范化整理。 【知识模块】 面向对象方法 8
21、 【正确答案】 B 【试题解析】 本题主要考查静态数据成员的内容。 类的静态成员与一般 的类成员不同,静态成员与对象的实例无关,只与类本身有关。它们一般用来实现类要封装的功能和数据,但不包括特定对象的功能和数据。静态成员和普通数据成员区别较大,体现在下面几点: (1)普通数据成员属于类的一个具体的对象,只有对象被创建了,普通数据成员才会被分配内存。静态数据成员属于整个类,即使没有任何对象创建,类的静态数据成员变量也存在。 (2)外部访问类的静态成员只能通过类名来访问。 (3)类的静态成员函数无法直接访问普通数据成员 (可以通过类的指针等作为参数间接访问 ),而类的任何成员函 数都可以访问类的静
22、态数据成员。 (4)类的静态方法只能访问该类的静态数据成员。 另外,静态成员和类的普通成员一样,也具有 public、 protected、 private3种访问级别,也可以具有返回值及被修改等性质。 而在本题中,虽然 f1和 f2都是同一个类的成员函数,但 f1不能调用 f2,如果它们都是普通成员函数,那么肯定是可以调用;如果它们都是静态成员函数,也可以调用;如果 f1是静态成员函数,而 f2不是的话,那么这种情况下, f1不能调用 f2;如果 f1不是静态成员函数,而 f2是的话,那么 这种情况下, f1也能调用f2。 综上所述,可知本题的答案选 B。 【知识模块】 面向对象方法 9 【
23、正确答案】 B 【试题解析】 UML对系统架构的定义是系统的组织结构,包括系统分解的组成部分,以及它们的关联性、交互机制和指导原则等提供系统设计的信息。具体来说,就是指以下 5个系统视图: (1)逻辑视图。逻辑视图也称为设计视图,表示设计模型中在架构方面具有重要意义的部分,即类、子系统、包和用例实现的子集。 (2)进程视图。进程视图是可执行线程和进程作为活动类的建模,是逻辑 视图的一次执行实例,描述了并发与同步结构。 (3)实现视图。实现视图对组成基于系统的物理代码的文件和构件进行建模。 (4)部署视图。部署视图把构件部署到一组物理结点上,表示软件到硬件的映射和分布结构。 (5)用例视图。用例
24、视图是最基本的需求分析模型。 【知识模块】 面向对象方法 10 【正确答案】 B 【试题解析】 在定义一个对象的同时,希望能给它的数据成员赋初值 对象的初始化。在特定对象使用结束时,还经常需要进行一些清理工作。 C+程序中的初始化和清理工作分别由两 个特殊的成员函数来完成,它们就是构造函数和析构函数。 构造函数是与类名相同的,在建立对象时自动调用的函数。如果在定义类时,没有为类定义构造函数,编译系统就生成一个默认形式的隐含的构造函数,这个构造函数的函数体是空的,因此默认构造函数不具备任何功能。构造函数是类的一个成员函数,除了具有一般成员函数的特征之外,还归纳出如下特殊的性质: (1)构造函数的
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 软件 水平 考试 中级 设计师 上午 基础知识 试题 模拟 81 答案 解析 DOC
