设计模式考试复习题含答案.doc

上传人:壹****1 文档编号:558269839 上传时间:2024-01-18 格式:DOC 页数:15 大小:306.54KB
返回 下载 相关 举报
设计模式考试复习题含答案.doc_第1页
第1页 / 共15页
设计模式考试复习题含答案.doc_第2页
第2页 / 共15页
设计模式考试复习题含答案.doc_第3页
第3页 / 共15页
设计模式考试复习题含答案.doc_第4页
第4页 / 共15页
设计模式考试复习题含答案.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《设计模式考试复习题含答案.doc》由会员分享,可在线阅读,更多相关《设计模式考试复习题含答案.doc(15页珍藏版)》请在金锄头文库上搜索。

1、一、1. 设计模式一般用来解决什么样的问题: A.同一问题的不同表相2. 下列属于面向对象基本原则的是: C.里氏代换3. Open-Close原则的含义是一个软件实体:A.应当对扩展开放,对修改关闭.4. 当我们想创建一个具体的对象而又不希望指定具体的类时,使用(A)模式。A.创建型 5. 要依赖于抽象不要依赖于具体。即针对接口编程不要针对实现编程:(D)依赖倒转原则6. 依据设计模式思想,程序开发中应优先使用的是( A )关系实现复用。A, 委派7. 设计模式的两大主题是( D ) D.系统复用与系统扩展8. 单体模式中,两个基本要点(AB)和单体类自己提供单例A .构造函数私有 B.唯一

2、实例9. 下列模式中,属于行为模式的是( B ) B观测者10. “不要和陌生人说话” 是( D )原则的通俗表述 D.迪米特1. 软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述 活动 ,也不描述 系统如何开发 ,它只描述系统的 组成元素 及其互相的 交互协作 。2一个UML模型只描述了一个系统 要做什么 ,它并没告诉我们系统是 怎么做 。3接口是可以在整个模型中反复使用的一组行为,是一个没有 属性 而只有 方法 的类。4多重性指的是,某个类有 多 个对象可以和另一个类的 一 对象关联。5当一个类的对象可以充当多种角色时, 自身 关联就也许发生。6在泛化关系中,子类 可以替

3、代 父类。后前者出现的可以相同地方。反过来却不成立。7最通常的依赖关系是一个类操作的 形构 中用到了 另一个类 的定义。8组成是 强类型 的聚集,由于聚集中的每个部分体只能属于 一个 整体。9实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用 虚线 表达,继承关系用 实线 表达。10. 设计模式中应优先使用 对象组合 而不是 类继承 。1. 适配器模式属于创建型模式结构型( F )2. 在设计模式中,“效果”只是指“因素和结果”( T )3. 设计模式使代码编制不能真正工程化 ( T )4. 面向对象语言编程中的异常解决,可以理解为责任链模式(T )5. 反模式就是反对在软件开发过程

4、中使用设计模式分析:反模式用来解决问题的带有共性的不良方法(F )1. 什么是设计模式?设计模式目的是什么?答:设计模式是一套被反复使用、多数人知晓的、通过度类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被别人理解,保证代码可靠性。2. 设计模式中一般都遵循的原则有什么?答:开闭原则、根据场景进行设计原则、优先组合原则、包容变化原则3. “Gang of Four”针对“创建优秀面向对象设计”建议了哪些策略?答:针对接口编程、优先使用对象组合而不是类继承,找到并封装变化点。4. 面向对象系统中功能复用的两种最常用技术是什么?答:类继承和对象组合,类继承允许你根据其他类

5、的实现来定义一个类的实现。父类的内部细节对子类可见。类继承是在编译时刻静态定义的,且可直接使用,类继承可以较方便地改变被复用的实现。对象组合是类继承之外的另一种复用选择。新的更复杂的功能可以通过组装或组合对象来获得。对象组合规定被组合的对象具有良好定义的接口。5. 只根据抽象类中定义的接口来操纵对象有什么好处? 答:1)客户无须知道他们使用对象的特定类型,只须对象有客户所盼望的接口。2)客户无须知道他们使用的对象是用什么类来实现的,他们只须知道定义接口的抽象类。五、应用题(分值15)公司架构:经理、工程师、技师和后勤人员都是公司的雇员,经理管理工程师、技师和后勤人员。高层经理领导较低档别的经理

6、。典型层次图如下:可以使用哪种设计模式实现公司的层级关系?并说明为什么?组合模式,第一,其公司关系架构为树形结构;第二,其表达了部分-整体关系(自己扩展)1. 在观测者模式中,表述错误的是( C )C. 观测者可以改变被观测者的状态,再由被观测者告知所有观测者依据被观测者的状态进行。2. 对于违反里式代换原则的两个类,可以采用的候选解决方案错误的是:( D )D. 以上方案错误3. 下列模式属于结构型设计模式的是( AB )A. Composite B. 享元(Flyweight)模式4. 关于继承表述错误的是:( D )D. 继承本质上是“白盒复用”,对父类的修改,不会影响到子类。5. 对于

7、依赖倒转的表述错误的是(C)C. 从选项B的角度论述,一个对象可以有多个接口。6. 可以使用哪一种设计模式限制类的实例唯一?( D )D单体模式7. Java数据库连接库JDBC用到哪种设计模式( B )?B.工厂方法8. 关于运用GOF工厂方法的效果Consequences,说法不对的的是(C)有助于产品的一致性8. 在应用程序中可用哪些设计模式分离出算法?( B )B. 策略模式9. 工厂方法也称为( D )D. 虚构造器10. 可以使用哪种设计模式将抽象和实现解耦,使得抽象和实现可以独自变化?( B )桥接模式1. 面向对象的七条基本原则涉及:开闭原则,里式代换原则,合成聚合原则以及(迪

8、米特法则),(依赖倒转),(单一原则),(接口隔离)。2. 在存在继承关系的情况下,方法向(超类)方向集中,而数据向(子类)方向集中。3. 适配器模式,分为类的适配器和对象的适配器两种实现。其中类的适配器采用的是(继承)关系,而对象适配器采用的是(组合聚合)关系。4. 设计模式的四个基本要素是(名字),(意图),(问题)和(解决方案)。5. .创建型模式的主线意图是要把(对象的创建)和(使用分离)的责任进行分离,从而减少系统的(耦合度)。6. 工厂模式分为(简朴工厂),(工厂方法),(抽象工厂)三种类型。7. 门面模式是(迪米特)法则的典型运用8. MVC模型的基本工作原理是基于(观测者)模式

9、,实现是基于(命令)模式9. 设计模式的思想根源是(开闭)基本原则的宏观运用,本质上是没有任何模式的,发现模式的人永远是大师,而死守模式的人,最对只能是一个工匠.1.在MVC模型中M、V、C分别指什么?简述它们之间的关系?M:模型(Model), V:视图(View) C:控制Controller)。MVC模式的目的就是实现Web系统的职能分工。Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。View层用于与用户的交互,通常用JSP来实现。Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户

10、的输入并将它们映射为模型层可执行的操作。2.什么是开闭原则?软件实体应当对扩展开放,对修改关闭,软件系统中包含的各种组件,例如模块(Modules)、类(Classes)以及功能(Functions)等,应当在不修改现有代码的基础上,引入新功能。开闭原则中“开”,是指对于组件功能的扩展是开放的,是允许对其进行功能扩展的;开闭原则中“闭”,是指对于原有代码的修改是封闭的,即不应当修改原有的代码。3.设计数据库的系统日记,要考虑使用哪些设计模式?答:命令模式,备忘录模式,外观模式4.使用工厂模式的重要因素是什么?工厂模式定义:提供创建对象的接口.由于工厂模式就相称于创建实例对象的new,我们经常要

11、根据类Class生成实例对象,如Aa=newA()工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑使用工厂模式,虽然这样做,也许多做一些工作,但会给你系统带来更大的可扩展性和尽量少的修改量。5、猫大叫一声,所有的老鼠都开始逃跑,主人被惊醒问:(1)设计也许用到什么设计模式?(2)画出其类图。 观测者模式 分析:要有联动性,老鼠和主人的行为是被动的;考虑可扩展性,猫的叫声也许引起其他联动效应。一、 多项选择题(1)以下是模式的基本要素的是(ABCD)A名称B意图C)解决方案D)参与者和协作者(2)常用的描述设计模式的格式有(ABCD)A)意图B)动机C)合用性D)结构(

12、3)以下哪些问题通过应用设计模式可以解决(AD)A指定对象的接口D设计应支持变化(4)面向对象系统中功能复用的最常用技术是( AB )。A)类继承B)对象组合(5)常用的基本设计模式可分为( A )。A)创建型、结构型和行为型(6)以下关于创建型模式说法对的的是(A )。A)创建型模式关注的是对象的创建 (7)以下属于创建型模式的是(AC )。A)抽象工厂(Abstract Factory)模式 C)单例(Singleton)模式(8) ( C )模式是运用一个对象,快速生成一批对象。C)原型(Prototype)模式(9)在不破坏类封装性的基础上,使得类可以同不曾估计到的系统进行交互。重要体

13、现在( AD )。 A)适配器(Adapter)模式D)桥接(Bridge)模式(10)结构型模式中最体现扩展性的几种模式是( C ) C)装饰(Decorator)模式(11)行为类模式使用( C )在类间分派行为。C)对象组合 (12)以下属于行为对象模式的是(ABCD ) A)模板(Template Method)模式 B)迭代器(Iterator)模式C)命令(Command)模式D)观测者(Observer)模式(13)封装分布于多个类之间的行为的模式是( C ) C)访问者(Visitor)模式(14)Observer(观测者)模式合用于(C)。(C)当一个对象必须告知其它对象,而

14、它又不能假定其它对象是谁。也就是说你不希望这些对象是紧耦合的。(15)Java的异常解决机制可理解为哪一种行为模式( C )。C)职责链(Chain of Responsibility)模式二、 填空题(分值20)1. (单一职责)原则的核心思想是系统中的每一个对象都应当只有一个单独的职责,而所有对象所关注的就是自身职责的完毕。2. ( 开闭 )原则的核心思想是一个对象对扩展开放,对修改关闭;实现此原则的关键就在于( 抽象 )、分离出( 扩展 )部分和( 修改 )部分。3. (里氏替换)原则的核心思想是在任何父类出现的地方都可以用它的子类来替代。4. (依赖倒置)原则的核心思想是要依赖于抽象,

15、而不要依赖于具体的实现。5. (接口隔离)原则的核心思想是不应当逼迫客户程序依赖于他们不用的方法。即一个接口不需要提供太多的行为,应当只提供一种对外的功能,不应当把所有的操作都封装在一个接口中。6. (迪米特)原则的核心思想是一个对象应当对其它对象尽也许少的了解。或者说,只和你的朋友说话。这样一些对象可以看做朋友:当前对象自身、通过方法的参数传递进来的对象、当前对象所创建的对象、当前对象的实例变量所引用的对象和方法内所创建或者实例化的对象。7. (优先使用组合)原则的核心思想是优先使用组合而非继承。8. 设计模式应当面向( 对象 )编程三、 判断题(分值10)1. 单一职责原则表现在面向对象的程序中就是“高内聚、低耦合”。(T) 2. 设计模式只能遵从使用,不能也无需创新。(F)3. 在面向对象编程时,无论何时何地都要使用GoF

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

最新文档


当前位置:首页 > 商业/管理/HR > 商业合同/协议

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