设计模式复习资料二 下载本文

内容发布更新时间 : 2024/12/27 12:10:11星期一 下面是文章的全部内容请认真阅读。

一、填空题:

1) 工厂方法模式中,父类负责定义创建对象的公共接口,子类决定要创建的具体类是哪一个。 2) 抽象工厂模式提供一系列相关或相互依赖对象的接口而无需指定它们具体的类。 3) 单件模式确保某一个类仅有一个实例,并自行实例化并向整个系统提供这个实例。

4) 组合模式将对象组合成树形结构以表示“部分-整体”的层次结构。使得用户对单个对象和组合对象的使用具有一致性。

5) 外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用,为子系统中的一组接口提供一个一致的界面,简化了一群类的接口。

6) 观察者模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新,也就是让对象能在状态改变时被通知。

7) 模板模MVC模型式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。 8) 迭代器模式在对象的集合之中游走,而不暴露集合的实现。 9) 代理模式包装对象,以控制对比对象的访问。 10) 适配器模式封装对象,并提供不同的接口。

2.工厂模式分为(简单工厂),(工厂方法),(抽象工厂)三种类型。

3.适配器模式,分为类的适配器和对象的适配器两种实现。其中类的适配器采用的是(继承)关系,而对象适配器采用的是(组合聚合)关系。

4.设计模式的基本要素有(名字),(意图),(问题),(解决方案),(参与者与协作者),(实现),(一般性结构)。

5.MVC模型的基本工作原理是基于(观察者)模式,实现是基于(命令)模式

6.面向对象的六条基本原则包括:开闭原则,里式代换原则,合成聚合原则以及(依赖倒转),(迪米特法则)(接口隔离)。

7.当我们想用不同的请求对客户进行参数化时,可以使用(命令)模式。

8.当我们想封装不同算法并使它们可相互替换时,可以使用(策略)模式。

9. 每一个设计模式都集中于一个特定的(设计问题),描述了(相互通信的对象)或者(类)以及(解决方案)和(解决效果)。

10.设计模式中应优先使用(对象组合)而不是(类继承)。

11.面向对象(OO)的基础包括(抽象)(封装)(多态)(继承)。 12.(状态模式)允许一个对象基于内部状态而拥有不同的行为。 13.模式不是代码,而是(针对设计问题)的通用解决方案。 14.观察者模式定义了对象之间(一对多)的关系。 15.观察者和可观察者之间用(松耦合方式)结合。

16.设计模式的两大主题是:(对象组合)和(类继承)的讨论。

17.(组合)和(委托)可用于运行时动态地加上新的行为。

18.工厂方法使用(继承)把对象的创建委托给子类,子类实现了工厂方法来创建对象。 19.抽象工厂方法使用(对象组合)使对象的创建被实现在工厂接口所暴露出来的方法中。 20.在Java中实现单件模式,需要私有的(构造器)(一个静态方法)和(一个静态变量) 21.命令模式将(发出请求)的对象和(执行请求)的对象解耦。 22.当需要一个现有的类而其接口不符合需求时,可使用(适配器)模式。 23.适配器模式的两种模式是(对象适配器)和(类适配器)。

24.(模板方法)定义了算法的步骤,把这些步骤的实现延迟到了子类。 25.(代理模式)为另一个对象提供代表,以便控制客户对对象的访问。 26.装饰着模式为对象加上(行为)而代理模式则是(控制访问)。 27.开闭原则:(扩展开放)(修改关闭)。

28.代理模式分为哪4种:(虚拟代理)(远程代理)(安全代理)(聪明引用)。 选择题

2.若系统中的某子模块需要为其它模块提供访问不同数据库系统(Oracle、SQL Server、DB2 UDB 等)的功能,这些数据库系统提供的访问接口有一定的差异,但访问过程却都是相同的,例如,先连接数据库,再打开数据库,最后对数据进行查询,(D)设计模式可抽象出相同的数据库访问过程; A. 外观 B. 装饰 C. 单件 D. 模板方法

3.系统中的文本显示类(TextView)和图片显示类(PictureView)都继承了组件类(Component),分别显示文本和图片内容,现需要构造带有滚动条、或者带有黑色边框、或者既有滚动条又有黑色边框的文本显示控件和图片显示控件,但希望最多只增加三个类,( B )设计模式可以实现该目的。 A. 外观 B. 装饰 C.单件 D. 模板方法 4. 下面的类图表示的是哪个模式?( A ) A、抽象工厂模式(Abstract Factory) B、工厂方法模式(Factory Method) C、命令模式(Command)

D、责任链模式(Chain of Responsibility) 5. 下面的类图表示的是哪个设计模式?( B ) A、代理模式(Proxy) B、装饰模式(Decorator) C、桥接模式(Bridge) D、观察者模式(Observer)

6.下面的类图表示的是哪个模式?( B ) A、代理模式(Proxy) B、外观模式(Facade) C、适配器模式(Adapter) D、桥接模式(Bridge) 7.下面的类图表明了哪个模式?( D )

A、责任链模式(Chain of Responsibility) B、命令模式(Command) C、备忘录模式(Memento) D、工厂方法模式(Factory Method) 8. 下面的类图表示的是哪个设计模式?( D )

A、模板方法模式(Template Method) B、命令模式 (Command) C、单例模式(Singleton) D、状态模式(State) 9.下面的类图表示的是哪个设计模式?( C )

A、模板方法模式(Template Method) B、命令模式 (Command) C、单例模式(Singleton) D、状态模式(State)

10.当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( A)模式。 A.创建型 B.结构型 C行为型 D.以上都可以 11、设计模式的两大主题是( d )

A.系统的维护与开发 B 对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展

12、单例模式中,两个基本要点( a b )和单子类自己提供单例 A .构造函数私有 B.唯一实例 C.静态工厂方法 D.以上都不对

13、下列模式中,属于行为模式的是( b ) A.工厂模式 B观察者 C适配器以上都是

14、对象适配器模式是( a )原则的典型应用。 A.合成聚合复用原则 B.里式代换原则 C.依赖倒转原则 D.迪米特法则

15、静态工厂的核心角色是(a)

A.抽象产品 B.具体产品 C.静态工厂 D.消费者

16、在观察者模式中,表述错误的是( c ) A.观察者角色的更新是被动的。 B.被观察者可以通知观察者进行更新

C.观察者可以改变被观察者的状态,再由被观察者通知所有观察者依据被观察者的状态进行。 D.以上表述全部错误。

17、以下关于创建型模式说法正确的是。(A) A.创建型模式关注的是对象的创建