见面课:创建型设计模式总结

1、问题:工厂设计模式可以分为:简单工厂方法,工厂方法模式和抽象工厂模式。
选项:
A:对
B:错
答案: 【

2、问题:创建型软件设计模式分为:简单工厂方法模式、工厂方法模式、抽象工厂模式、生成器模式、单例模式和原型模式。
选项:
A:对
B:错
答案: 【

3、问题:创建型软件设计模式的目标是将一个系统与其对象的创建、组合、表示分离开来,该模式的主要任务是为客户程序创建对象,而不是由客户程序直接初始化对象。
选项:
A:对
B:错
答案: 【

4、问题:单例模式分为饿汉式和懒汉式两种类型。
选项:
A:对
B:错
答案: 【

5、问题:生成器模式为了使构建复杂对象的过程和它的部件解耦,软件设计用一个类单独封装一个构造对象的过程,该类为(Director类)。
选项:
A:对
B:错
答案: 【

6、问题:在原型设计模式里运用复制技术来快速构建对象,而复制分类深复制与浅复制两种类型。
选项:
A:对
B:错
答案: 【

见面课:深入理解命令(Command)设计模式

1、问题:任何设计模式均是为了解决特定场景的耦合问题,以达到对修改关闭,对扩展开放的效果。命令模式主要是解决请求者与实现者之间的耦合关系。
选项:
A:对
B:错
答案: 【

2、问题:命令模式将请求封装成对象,形成命令,以便统一控制。使得不同的请求,如日志、队列等来参数化其他对象。
选项:
A:对
B:错
答案: 【

3、问题:在餐厅点餐的实例中,( )是命令,( )是接收者,( )是调用者。
选项:
A:老板
B:厨师
C:服务员
D:菜单
答案: 【厨师;
服务员;
菜单


4、问题:命令模式的优点是( )。
选项:
A:降低了系统耦合度
B:新的命令可以很容易添加到系统中去
C:使用命令模式可能会导致某些系统有过多的具体命令类
D:使用命令模式可以快速创建对象
答案: 【降低了系统耦合度;
新的命令可以很容易添加到系统中去


5、问题:命令模式的缺点是( )。
选项:
A:降低了系统耦合度
B:新的命令可以很容易添加到系统中去
C:使用命令模式可能会导致某些系统有过多的具体命令类
D:使用命令模式可以快速创建对象
答案: 【使用命令模式可能会导致某些系统有过多的具体命令类

见面课:装饰器模式在JavaEE中的应用

1、问题:装饰器模式又叫包装模式,装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。
选项:
A:对
B:错
答案: 【

2、问题:装饰器模式以对客户透明的方式动态地给一个对象附加上更多的责任。
选项:
A:对
B:错
答案: 【

3、问题:使用继承方法,可重写父类中的方法以增强父类的责任与功能,但使用继承会破坏对象的封装性及浪费继承位,不建议使用。
选项:
A:对
B:错
答案: 【

4、问题: 在Java JDK中大量运用了装饰器模式,如JDK经常使用的Reader抽象类,CharArrayReader类、InputStreamReader类、BufferedReader类等。
选项:
A:对
B:错
答案: 【

5、问题:装饰器模式的类图中具有( )。
选项:
A:拟要增加的类
B:公共接口
C:抽象装饰类
D:具体装饰类
E:工厂类
答案: 【拟要增加的类;
公共接口 ;
抽象装饰类;
具体装饰类

见面课:观察者模式

1、问题:下列属于结构型模式设计模式的是( )。
选项:
A:命令模式
B:适配器模式
C:桥拉模式
D:组合模式
E:享元模式
F:代理模式
G:外观模式
答案: 【适配器模式;
桥拉模式;
组合模式;
享元模式;
代理模式;
外观模式


2、问题:行为设计模式有( )。
选项:
A:观察者模式、命令模式、模板方法模式
B:访问者模式、状态模式
C:中介者模式、策略模式
D:解释器模式、备忘录模式
E:迭代器模式、职责链模式
F:装饰器模式、外观模式
答案: 【观察者模式、命令模式、模板方法模式;
访问者模式、状态模式;
中介者模式、策略模式;
解释器模式、备忘录模式;
迭代器模式、职责链模式


3、问题:面向对象设计模式可分为三类:创建型模式、结构型模式和行为型模式。
选项:
A:对
B:错
答案: 【

4、问题:在JavaJDK中Java中,通过java.util.Observable类和java.util.Observer接口定义了观察者模式,我们在设计观察者模式,只要实现它们的子类就可以编写观察者模式实例。
选项:
A:对
B:错
答案: 【

5、问题:观察者模式中,存在着推数据与拉数据问题,推数据方式是指具体主题变化后的数据全部交给具体观察者,即将变化后的数据传递给具体观察者用于更新数据方法的参数。拉数据方式的特点是观察者对象可间接获得变化后的主题数据,观察者自己把数据拿过来。
选项:
A:对
B:错
答案: 【

6、问题:观察者模式提高了目标与观察者之间的耦合关系。
选项:
A:对
B:错
答案: 【

第一章 单元测试

1、 问题:

以下对开闭原则的描述错误的是()。

选项:
A:开闭原则与“对可变形的封装原则”没有相似性
B:找到一个系统的可变元素,将它封装起来,叫开闭原则
C:对修改关闭,是其原则之一
D:从抽象层导出一个或多个新的具体类可以改变系统的行为,是其原则之一
答案: 【
开闭原则与“对可变形的封装原则”没有相似性

2、 问题:

常用的基本设计模式可分为()。

选项:
A:创建型、结构型和行为型
B:对象型、结构型和行为型
C:过程型、结构型和行为型
D:抽象型、接口型和实现型
答案: 【
创建型、结构型和行为型

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

4、 问题:下列属于面向对象基本原则的是()。
选项:
A:继承
B:封装
C:里氏替换 
D:子类复用
答案: 【
里氏替换 

5、 问题:

软件设计模式的最关键的元素包括()。

选项:
A:名称  
B:问题
C:解决方案
D:参与者和协作者
答案: 【
名称  
问题
解决方案
参与者和协作者

6、 问题:

常用的描述设计模式的格式有()。

选项:
A:意图
B:动机
C:适用性
D:结构
答案: 【
意图
动机
适用性
结构

7、 问题:“不要和陌生人说话”是迪米特原则的通俗表述。
选项:
A:对
B:错
答案: 【

8、 问题:

依据设计模式思想,程序开发中应优先使用的是创建。

选项:
A:对
B:错
答案: 【

9、 问题:设计模式一般用来解决同一问题的不同表相。
选项:
A:对
B:错
答案: 【

10、 问题:学习设计模式可以缩短软件的开发周期。
选项:
A:对
B:错
答案: 【

第二章 单元测试

1、 问题:以下关于创建型模式说法正确的是()。
选项:
A:创建型模式关注的是对象的创建
B:创建型模式关注的是功能的实现
C:创建型模式关注的是组织类和对象的常用方法
D:创建型模式关注的是对象间的协作
答案: 【
创建型模式关注的是对象的创建

2、 问题:当创建一个具体的对象而不希望制定具体的类时,可以使用()模式。
选项:
A:结构型
B:创建型
C:行为型
D:复用型
答案: 【
创建型

3、 问题:当需要在项目中定制自己的元素时,可使用()模式来定制。
选项:
A:结构型
B:创建型
C:行为型
D:复用型
答案: 【
创建型

4、 问题:

当应用工厂方法(Factory Method)模式时要考虑()。

选项:
A:主要有两种不同的情况
B:参数化工厂方法
C:特定语言的变化和问题
D:使用模板以避免创建子类
答案: 【
主要有两种不同的情况
参数化工厂方法
特定语言的变化和问题
使用模板以避免创建子类

5、 问题:工厂模式分为()3种类型。
选项:
A:简单工厂
B:工厂方法
C:抽象工厂
D:单例
答案: 【
简单工厂
工厂方法
抽象工厂

6、 问题:

简单工厂模式可以根据参数的不同返回不同的实例。

选项:
A:对
B:错
答案: 【

7、 问题:工厂方法模式的主要角色有:抽象工厂(Abstract Factory) 、 具体工厂(Concrete Factory) 、抽象产品(Product)和具体产品(Concrete Product)。
选项:
A:对
B:错
答案: 【

8、 问题:

抽象工厂模式是简单工厂模式的升级版本,工厂方法模式只生产一个等级的产品,而抽象工厂模式可生产多个等级的产品。

选项:
A:对
B:错
答案: 【

9、 问题:

创建型模式把实例化的责任与使用实例的责任分割开来。

选项:
A:对
B:错
答案: 【

10、 问题:

由于Abstract Factory类和具体工厂方法可以分离,因此在实现时会产生更多的类。

选项:
A:对
B:错
答案: 【

第三章 单元测试

1、 问题:

()可用来描述原型(Prototype)。

选项:
A:允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类。
B:表示一个作用于某对象结构中的各元素的操作。它是你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。
C:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
D:用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。
答案: 【
用原型实例指定创建对象的种类,并且通过复制这些原型创建新的对象。

本门课程剩余章节答案为付费内容
本文章不含期末不含主观题!!
本文章不含期末不含主观题!!
支付后可长期查看
有疑问请添加客服QQ 2356025045反馈
如遇卡顿看不了请换个浏览器即可打开
请看清楚了再购买哦,电子资源购买后不支持退款哦

   

发表评论

电子邮件地址不会被公开。 必填项已用*标注