设计模式考试复习题(含答案)
一、1. 设计模式一般用来解决什么样的问题:
2. 下列属于面向对象基本原则的是:
3. Open-Clo原则的含义是一个软件实体:A.应当对扩展开放,对修改关闭.
4. 当我们想创建一个具体的对象而又不希望指定具体的类时,使用(A)模式。A.创建型
5. 要依赖于抽象不要依赖于具体。即针对接口编程不要针对实现编程:(D)依赖倒转原则
6. 依据设计模式思想,程序开发中应优先使用的是( A )关系实现复用。A, 委派
7. 设计模式的两大主题是( D )
8. 单体模式中,两个基本要点(AB)和单体类自己提供单例
9. 下列模式中,属于行为模式的是( B ) B观察者
10. “不要和陌生人说话” 是( D )原则的通俗表述
1. 软件体系结构是指一个系统的有目的的设计和规划,这个设计规划既不描述 活动 ,也不描述 系统怎样开发 ,它只描述系统的 组成元素 及其相互的 交互协作 。
2.一个UML模型只描述了一个系统 要做什么 ,它并没告诉我们系统是 怎么做 。
3.接口是可以在整个模型中反复使用的一组行为,是一个没有 属性 而只有 方法 的类。
4.多重性指的是,某个类有 多 个对象可以和另一个类的 一 对象关联。
5.当一个类的对象可以充当多种角色时, 自身 关联就可能发生。
6.在泛化关系中,子类 可以替代 父类。后前者出现的可以相同地方。反过来却不成立。
7.最通常的依赖关系是一个类操作的 形构 中用到了 另一个类 的定义。
8.组成是 强类型 的聚集,因为聚集中的每个部分体只能属于 一个 整体。
9.实现的符号和继承的符号有相似之处,两者的唯一差别是实现关系用 虚线主人用英语怎么说 表示,继承关系用 实线 表示。
正义的眼睛
10. 设计模式中应优先使用治疗气管炎偏方 对象组合怜悯是什么意思>鱿鱼须图片 而不是 类继承 。
1.适配器模式属于创建型模式结构型( F )
2.在设计模式中,“效果”只是指“原因和结果”( T )
3.设计模式使代码编制不能真正工程化 ( T )
4.面向对象语言编程中的异常处理,可以理解为责任链模式(T )
5.反模式就是反对在软件开发过程中使用设计模式分析:反模式用来解决问题的带有共性的不良方法(F )
1.什么是设计模式?设计模式目标是什么?
答:设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解,保证代码可靠性。
2.设计模式中一般都遵循的原则有什么?
答:开闭原则、根据场景进行设计原则、优先组合原则、包容变化原则
3.宪法解释权“Gang of Four”针对“创建优秀面向对象设计”建议了哪些策略?
答:针对接口编程、优先使用对象组合而不是类继承,找到并封装变化点。
4.面向对象系统中功能复用的两种最常用技术是什么?
答:类继承和对象组合,类继承允许你根据其他类的实现来定义一个类的实现。父类的内部细节对子类可见。类继承是在编译时刻静态定义的,且可直接使用,类继承可以较方便地改变被复用的实现。对象组合是类继承之外的另一种复用选择。新的更复杂的功能可以通过组装或组合对象来获得。对象组合要求被组合的对象具有良好定义的接口。
5.只根据抽象类中定义的接口来操纵对象有什么好处?
答:1) 客户无须知道他们使用对象的特定类型,只须对象有客户所期望的接口。
2) 客户无须知道他们使用的对象是用什么类来实现的,他们只须知道定义接口的抽象类。
五、应用题(分值15)
一千字检讨
公司架构:经理、工程师、技师和后勤人员都是公司的雇员,经理管理工程师、技师和后勤人员。高层经理领导较低级别的经理。典型层次图如下:可以使用哪种设计模式实现公司的层级关系?并说明为什么?椰汁香芋西米露
组合模式,第一,其公司关系架构为树形结构;第二,其表示了部分-整体关系(自己扩展)
1. 在观察者模式中,表述错误的是( C )C. 观察者可以改变被观察者的状态,再由被观察者通知所有观察者依据被观察者的状态进行。