智慧树知到《设计模式与软件体系结构》章节测试答案

上传人:re****.1 文档编号:486325419 上传时间:2023-09-04 格式:DOC 页数:30 大小:100.50KB
返回 下载 相关 举报
智慧树知到《设计模式与软件体系结构》章节测试答案_第1页
第1页 / 共30页
智慧树知到《设计模式与软件体系结构》章节测试答案_第2页
第2页 / 共30页
智慧树知到《设计模式与软件体系结构》章节测试答案_第3页
第3页 / 共30页
智慧树知到《设计模式与软件体系结构》章节测试答案_第4页
第4页 / 共30页
智慧树知到《设计模式与软件体系结构》章节测试答案_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《智慧树知到《设计模式与软件体系结构》章节测试答案》由会员分享,可在线阅读,更多相关《智慧树知到《设计模式与软件体系结构》章节测试答案(30页珍藏版)》请在金锄头文库上搜索。

1、智慧树知到设计模式与软件体系结构章节测试答案第一章1、以下对开闭原则的描述错误的是() 。A: 开闭原则与“对可变形的封装原则”没有相似性B:找到一个系统的可变元素,将它封装起来,叫开闭原则C: 对修改关闭,是其原则之一D:从抽象层导出一个或多个新的具体类可以改变系统的行为,是其原则之一正确答案:开闭原则与“对可变形的封装原则”没有相似性2、常用的基本设计模式可分为() 。A: 创建型、结构型和行为型B: 对象型、结构型和行为型C: 过程型、结构型和行为型D: 抽象型、接口型和实现型正确答案:创建型、结构型和行为型3、 对违反里氏替换原则的两个类,可以采用的候选解决方案正确的是()。A:创建一

2、个新的抽象类 C,作为两个具体类的超类,将 A和B共同的行为移动到 C中,从而 解决A和B行为不完全一致的问题。B:将B到A的继承关系改成组合关系。C:区分是“is -a”还是“ has-a”。如果是“ is -a”,可以使用继承关系,如果是“ has -a” 应该改成组合关系。D:尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为基类,在 程序中尽量使用基类对象进行编程。正确答案:尽量将一些需要扩展的类或者存在变化的类设计为抽象类或者接口,并将其作为 基类,在程序中尽量使用基类对象进行编程。4、下列属于面向对象基本原则的是()。A: 继承B: 封装C:里氏替换D:子类复用

3、正确答案:里氏替换5、软件设计模式的最关键的元素包括()。A: 名称B: 问题C: 解决方案D: 参与者和协作者正确答案:名称 , 问题,解决方案 , 参与者和协作者6、 常用的描述设计模式的格式有()。A: 意图B: 动机C: 适用性D: 结构正确答案:意图 , 动机,适用性 , 结构7、“不要和陌生人说话”是迪米特原则的通俗表述。A: 对正确答案:对8、依据设计模式思想,程序开发中应优先使用的是创建。A:对B: 错正确答案:错9、设计模式一般用来解决同一问题的不同表相。A: 对B: 错正确答案:对10、学习设计模式可以缩短软件的开发周期。A: 对B: 错正确答案:对第二章1、以下关于创建型

4、模式说法正确的是()。A: 创建型模式关注的是对象的创建B: 创建型模式关注的是功能的实现C: 创建型模式关注的是组织类和对象的常用方法D: 创建型模式关注的是对象间的协作正确答案:创建型模式关注的是对象的创建2、当创建一个具体的对象而不希望制定具体的类时,可以使用()模式。A: 结构型B: 创建型C:行为型D: 复用型正确答案:创建型3、当需要在项目中定制自己的元素时,可使用()模式来定制。A: 结构型B: 创建型C: 行为型D: 复用型正确答案:创建型4、当应用工厂方法( Factory Method )模式时要考虑() 。A: 主要有两种不同的情况B: 参数化工厂方法C: 特定语言的变化

5、和问题D: 使用模板以避免创建子类, 使用模板以避免正确答案:主要有两种不同的情况 , 参数化工厂方法 , 特定语言的变化和问题 创建子类5、工厂模式分为() 3 种类型。A: 简单工厂B: 工厂方法C: 抽象工厂D: 单例正确答案:简单工厂 , 工厂方法 , 抽象工厂6、简单工厂模式可以根据参数的不同返回不同的实例。A:对B: 错正确答案:对7 、工厂方法模式的主要角色有 : 抽象工厂 (Abstract Factory) 、 具体工厂 (Concrete Factory) 、抽象产品 (Product) 和具体产品( Concrete Product )。A: 对B: 错正确答案:对8、抽

6、象工厂模式是简单工厂模式的升级版本, 工厂方法模式只生产一个等级的产品, 而抽象 工厂模式可生产多个等级的产品。A: 对B: 错正确答案:错9、创建型模式把实例化的责任与使用实例的责任分割开来。A: 对B: 错正确答案:对10、由于 Abstract Factory类和具体工厂方法可以分离,因此在实现时会产生更多的类。A: 对B: 错正确答案:错第三章1、()可用来描述原型( Prototype )。A:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。B: 表示一个作用于某对象结构中的各元素的操作。它是你可以在不改变各元素的类的前提下 定义作用于这些元素的新操作。C:定

7、义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对 象都得到通知并被自动更新。D:用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。正确答案: D2、在()适合使用单例( Singleton )模式。A: 当一个类不知道它所必须创建的对象的类的时候B: 当一个类的实例只能有几个不同的状态组合中的一种时C:当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩 展的实例时D:当一个类希望由它的子类来指定它所创建的对象的时候正确答案: C3、在()不适合使用原型( Prototype )模式。A: 当要实例化的类是在运行时刻指定是,例

8、如通过动态装载B: 当要强调一系列相关的产品对象的设计以便进行联合使用时C:为了避免创建一个与产品类层次平行的工厂类层次时D:当一个类的实例只能有几个不同状态组合中的一种时正确答案: B4、单例模式中,两个基本要点()和单子类自己提供单利。C:静态工厂方法D: 动态工厂方法正确答案: AB5、使用原型( Prototype )模式时要考虑的问题有() 。A: 使用一个原型管理器B: 实现克隆操作C: 初始化克隆对象D: 用类动态配置应用正确答案: ABC6、建造者模式包括 : ()等主要角色。A: 产品角色 (Product)B: 抽象建造者( Builder )C: 具体建造者( Concr

9、eteBuilder )D: 指挥者( Director )正确答案: ABCD7、单例模式分为懒汉式单例和饿汉式单例两种。A: 对B: 错3 个部分。正确答案: A8、原型( Prototype )模式包含:抽象原型类、具体原型类和访问者类等正确答案: A 9、建造者的退化模式是通过省略使用者角色完成退化的。A:对B: 错正确答案: B10、懒汉式单例类在第一次被引用时将自己实例化。A: 对B: 错正确答案: A第四章1、用来描述适配器 ( Adapter) 的意图是 ( ) 。A: 将一个类的接口转换成客户希望的另外一个接口,本模式使原本由于接口不兼容而不能一 起工作的那些类可以一起工作B

10、: 定义一个用于创建对象的接口,让子类决定实例化哪一个类C: 表示一个作用于某对象结构中的各元素的操作,它使用户可以在不改变各元素的类的前提 下定义作用于这些元素的新操作D: 将一个请求封装为一个对象, 从而使用户可用不同的请求对客户进行参数化 ; 对请求排队或 记录请求日志,以及支持可撤销的操作正确答案: A2、关于模式适用性,不适合使用适配器 ( Adapter ) 模式的是 ( ) 。A: 用户想使用一个已经存在的类,而它的接口不符合用户的需求B:用户想创建一个可以复用的类, 该类可以与其他不相关的类或不可预见的类(即那些接口可能不一定兼容的类 ) 协同工作C:用户想使用一些已经存在的子

11、类,但是不可能对每一个都进行子类化以匹配它们的接口。 对象适配器可以适配它的父类接口D:如果删除对象的外部状态,那么可以用相对较少的共享对象取代很多组对象正确答案: D3、对象的结构模式包括() 。A: 代理人模式B: 合成模式C: 享元模式D: 装饰模式正确答案: ABCD4、 适配器模式分为()2 种。A: 类结构型模式B: 对象结构型模式C: 代理模式D: 组合模式正确答案: AB5、 类适配器模式和对象适配器模式可用Java 实现。A: 对B: 错正确答案: A6、 类结构型模式之间的耦合度比后者高,且要求程序员了解现有组件库中的相关组件的内部 结构,所以应用相对较少些。正确答案: A

12、 7、适配器模式不可以模拟新能源汽车的发动机。A:对B: 错正确答案: B8、一个类的结构模式的典型例子就是类的适配器模式。A: 对B: 错正确答案: A其是动态9、 对象的结构模式描述怎样把各种不同类型的对象组合在一起,以实现新的功能, 的。A: 对B: 错正确答案: A10、 作为适配器模式的一个特例,缺省适配器模式在Java 语言中有着特殊的应用。A: 对B: 错正确答案: A第五章1、以下哪一项可用来描述装饰(Decorator) ()。A: 运用共享技术有效地支持大量细粒度的对象C: 将抽象部分与它的实现部分分离,使它们都可以独立变化D:动态地给一个对象添加一些额外的职责正确答案:

13、D2、装饰( Decorator) 模式不能用于下列那个选项() 。A: 在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责B: 处理那些可以撒销的职责C:客户程序与抽象类的实现部分之间存在着很大的依赖性D: 当不能采用生成子类的方法进行扩充时。一种情况是,可能有大量独立的扩展,每种组合 将产生大量的子类,使得子类数目呈爆炸性增长。另一种情况可能是类的定义被隐藏,或类 定义不能用于生成子类正确答案: C3、关于模式适用性,以下 ( ) 不适合使用 Composite( 组合) 模式。A: 用户想使用一个已经存在的类,而它的接口不符合用户的需求B: 用户想表示对象的部分 - 整体层次

14、结构C:当一个类的实例只能有几个不同状态组合中的一种时D: 一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为正确答案: B4、以下意图()是用来描述组合( Composite ) 。A: 为其他对象提供一种代理以控制对这个对象的访问B: 运用共享技术有效地支持大量细粒度的对象C:将对象组合成树形结构以表示“部分-整体”的层次结构D:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示正确答案: C5、 根据合成模式中提供父类对象的管理方法所在位置,即实现接口的区别分为两种形式 ()。A:透明方式B: 安全方式C: 模糊方式D: 继承方式正确答案: AB6、使用装饰模式时应注意 ( ) 。A: 接口的一致性B: 省略抽象的 Decorator 类C: 保持 Component 类的简单性D: 装饰对象包含一个真实对象的引用正确答案: ABCD7、装饰器模式的优点是() 。A: 装饰模式与继承关系的目的都是要扩展对象的功能,但是装饰模式可以提供比继承更多的 灵活性B:装饰模式允许系统动态地决定贴上装饰, 或者除掉一个不需要的装饰,继承则不同,继承是静态的,它在系统运行前就决定了C: 通过使用不同的具体装饰类以这些装饰类的排列组合,设计师可以创造出很我不同行为的 组合D: 这种比继承更加灵活机动的特性,也同时意

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号