软件设计模式练习题-2018

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一、选择题1.(A)模式的关键是将一个对象定义为原型,并为其提供复制自己的方法。A.原型B.创建者C.工厂方法D.迭代2.下面的类图表示的是哪个设计模式?(B)A装饰模式(Decorator)B策略模式(Strategy)C桥接模式(Bridge)D观察者模式(Observer)3.Strategy(策略)模式的意图是:(A)。A.定义一系列的算法,把它们一个个的封装起来,并且使它们可相互替换。B.为一个对象动态连接附加的职责。C.你希望只拥有一个对象,但不用全局对象来控制对象的实例化。D.在对象之间定义一种一对多的依赖关系,这样当一个对象的状态改变时,所有依赖于它的对象都将得到通知并自动更新。4.下面不属于创建型模式的有(C)。A.抽象工厂模式(AbstractFactory)B.工厂方法模式(FactoryMethod)C.适配器模式(Adapter)D.单例模式(Singleton)5.将一个类的接口转换成客户希望的另一个接口。这句话是对下列哪种模式的描述(C)。A.策略模式(Strategies)B.桥接模式(Bridge)C.适配器模式(Adapter)D.单例模式(Singleton)6.下面的类图表示的是哪个设计模式?(A)。A装饰模式(Decorator)B适配器模式(Adapter)C策略模式(Strategies)D桥接模式(Bridge)7.下面属于结构模式的有(D)。A.策略模式(Strategies)B.单例模式(Singleton)C.抽象工厂模式(AbstractFactory)D.装饰模式(Decorator8.下图可以使用(A)模式进行设计。A.组合B.模板C.责任链D.状态9.(B)将抽象部分与它的实现部分分离,使它们都可以独立地变化。A.组合B.桥接C.责任链D.状态10.下图是关于房间状态的描述,可以使用(D)模式进行设计。A.组合B.桥接C.责任链D.状态11.设计模式具有的优点(A)。A.适应需求变化B.程序易于理解C.减少开发过程中的代码开发工作量D.简化软件系统的设计12.设计模式一般用来解决什么样的问题(A)。A.同一问题的不同表相B不同问题的同一表相C.不同问题的不同表相D.以上都不是13.设计模式的两大主题是(D)。A.系统的维护与开发B.对象组合与类的继承C.系统架构与系统开发D.系统复用与系统扩展14.以下哪些问题通过应用设计模式不能够解决(C)A)指定对象的接口B)针对接口编程C)确定软件的功能都正确实现D)设计应支持变化15.打印池在操作系统中是一个用于管理打印任务的应用程序,通过打印池用户可以删除、中止或者改变打印任务的优先级。我们可以使用(D)来模拟实现打印池的设计。A.命令模式B.桥接C.责任链D.单例模式16.在现实生活中,居民身份证号码具有唯一性,居民可以申请身份证号码或补办身份证号码(还是使用原来的身份证号码,不会产生新的号码)。我们可以使用(C)来模拟实现居民身份证号码办理。A.命令模式B.桥接C.单例模式D.责任链17.在银行办理业务时,一般都包含几个基本步骤,即取号排队、办理具体业务和对银行工作人员进行评分。无论具体业务是取款、存款还是转账,其基本流程都一样。可以使用(C)模拟银行业务办理流程。A.工厂方法模式B.访问者模式C.模板方法模式D.责任链18.对数据库的操作一般包括连接、打开、使用、关闭等步骤,对于不同类型的数据库,其操作步骤都一致,只是连接数据库方法有所区别,可以使用(C)对其进行设计。A.工厂方法模式B.访问者模式C.模板方法模式D.责任链19.论坛权限控制设计:在一个论坛中已注册用户和游客的权限不同,已注册的用户拥有发帖、修改自己的注册信息、修改自己的帖子等功能;而游客只能看到别人发的帖子,没有其他权限。使用(B)来设计该权限管理模块。A.工厂方法模式B.代理模式C.享元模式D.外观模式20.在模拟毛笔的使用过程中提供了大中小3种型号的画笔,够绘制5种不同颜色。我们可以使用(B)来模拟实现模拟毛笔的使用。A.命令模式B.桥接C.单例模式D.责任链21.共享网络设备模拟:很多网络设备都是支持共享的,如交换机、集线器等,多台终端计算机可以连接同一台网络设备,并通过该网络设备进行数据转发。共享网络设备可以使用(C)模拟共享网络设备的设计原理。A.工厂方法模式B.代理模式C.享元模式D.外观模式22.购物车设计:顾客在超市中将选择的商品,如苹果、图书等放在购物车中,然后到收银员处付款。在购物过程中,顾客需要对这些商品进行访问,以便确认这些商品的质量,之后收银员计算价格时也需要访问购物车内顾客所选择的商品。购物车设计可以使用(B)来设计该购物过程。A.工厂方法模式B.访问者模式C.模板方法模式D.责任链23.某高校奖励审批系统可以实现教师奖励和学生奖励的审批(AwardCheck),如果教师发表论文数超过10篇或者学生论文超过2篇可以评选科研奖,如果教师教学反馈分大于等于90分或者学生平均成绩大于等于90分可以评选成绩优秀奖。奖励审批系统可以使用(B)设计该系统,以判断候选人集合中的教师或学生是否符合某种获奖要求。A.工厂方法模式B.访问者模式C.模板方法模式D.责任链24.现在大多数软件都有撤销(Undo)的功能,快捷键一般都是Ctrl+Z。这些软件可能使用了(A)模式来进行。A.备忘录模式B.访问者模式C.模板方法模式D.责任链25.某系统提供了用户信息操作模块,用户可以修改自己的各项信息。为了使操作过程更加人性化,可以使用(B)对系统进行改进,使得用户在进行了错误操作之后可以恢复到操作之前的状态。A.责任链B.备忘录模式C.模板方法模式D.访问者模式26.假设猫是老鼠和狗的观察目标,老鼠和狗是观察者,猫叫老鼠跑,狗也跟着叫,可以使用(B)描述该过程。A.命令模式B.观察者模式C.责任链D.单例模式27.通过电视机遥控器可以实现对电视机频道进行选择,其实选择电视机频道就是对存放频道的集合进行遍历操作。所以可以使用(C)模拟电视机遥控器的实现。A.命令模式B.观察者模式C.迭代器模式D.单例模式28.假设一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。通过该电源总开关可以同时控制上述所有电器设备,可以使用(A)来模拟设计该系统。A.外观模式B.观察者模式C.迭代器模式D.单例模式29.KFC套餐一般包含主食(如汉堡、鸡肉卷等)和饮料(如果汁、可乐等)等组成部分,不同的套餐有不同的组成部分,而KFC的服务员可以根据顾客的要求,一步一步装配这些组成部分,构造一份完整的套餐,然后返回给顾客。可以使用(D)描述KFC如何创建套餐。A.外观模式B.观察者模式C.迭代器模式D.建造者模式30.某OA系统需要提供一个假条审批的模块,如果员工请假天数小于3天,主任可以审批该假条;如果员工请假天数大于等于3天,小于10天,经理可以审批;如果员工请假天数大于等于10天,小于30天,总经理可以审批;如果超过30天,总经理也不能审批,提示相应的拒绝信息。如果假条审批使用模式来进行设计,可以使用(A)模式。A.责任链B.备忘录模式C.模板方法模式D.访问者模式31.以下关于创建型模式说法正确的是(A)A.创建型模式关注的是对象创建B.创建型模式关注的是功能的实现C.创建型模式关注的是组织类和对象的常用方法D.创建型模式关注的是对象间的协作。32.下列关于简单工厂模式与工厂方法模式表述错误的是(A)A.两者都满足开闭原则:简单工厂以ifelse方式创建对象,增加需求看看时候会修改源代码B.简单工厂对具体产品的创建类别和创建时机的判断是混合在一起的,这点在工厂方法模式中已经克服C.不能形成简单工厂的继承结构D.在工厂方法模式中,对于存在继承等级结构的产品树,产品的创建是通过相应等级结构的工厂创建的。33.简单工厂模式的核心是(C)A.抽象产品B.具体产品C.简单工厂D.消费者34.工厂方法模式的核心是(A)A.一个抽象工厂B.一个具体工厂C.一个接口D.没有核心35.在设计中如果一个对象请求另一个对象调用其方法到达某种目的,而不和请求的对象直接打交道,这种模式是(B)。A.观察者模式B.命令模式C.策略模式D.责任链模式36.(A)关于多个对象想知道一个对象中数据变化情况的一种成熟的模式。A.观察者模式B.命令模式C.策略模式D.责任链模式37.Open-Close原则的含义是一个软件实体(a)A.应当对扩展开放,对修改关闭.B.应当对修改开放,对扩展关闭C.应当对继承开放,对修改关闭D.以上都不对38.下列模式中,属于行为模式的是(B)A.工厂模式B观察者C适配器D.以上都是39.下列图1可对应(D)模式来进行设计。图1A.抽象工厂B观察者C适配器D.装饰40.如下列图2所示,在设计模式中,这种设计可采用(B)。图2A.命令模式B策略模式C.外观模式D.迭代器模式41.策略模式的结构中包括三种角色上下文、具体策略和抽象策略。抽象策略角色是一个(C)。A.类B抽象类C.接口D.子类42.用户已经有睛个两相插座,最的又买了一个三相插座。现在用户想使用新的三相插座来使用三相的洗衣机和二相插座的电视机,这种问题可以使用(B)模式来进行设计。A.命令模式B适配器模式C.外观模式D.迭代器模式43.如下列图3所示,在设计模式中,这种设计可采用(A)。图3A.命令模式B策略模式C.外观模式D.迭代器模式44.如下列图4所示,在设计模式中,这种设计可采用(C)。图4A.命令模式B策略模式C.适配器模式D.组合模式45.如下列图5所示,在设计模式中,这种设计可采用(A)。图5A.职责链模式B策略模式C.适配器模式D.组合模式46.如下列图6所示,在设计模式中,这种设计可采用(B)。图6A.职责链模式B原型模式C.适配器模式D.组合模式47.如下列图7所示,在设计模式中,这种设计可采用(A)。图7A.工厂方法模式B原型模式C.适配器模式D.组合模式48.如下列图8所示,在设计模式中,这种设计可采用(B)。产品族产品等级结构电视机冰箱空调海尔海信TCL一个产品族海尔工厂图8A.工厂方法模式B抽象工厂模式C.适配器模式D.组合模式49.如下列图9所示,在设计模式中,这种设计可采用(A)。图9A.建造者模式B抽象工厂模式C.适配器模式D.组合模式50.如下列图10所示,在设计模式中,这种设计可采用(B)。图10A.建造者模式B单例模式C.适配器模式D.组合模式51.如下列图11所示,在设计模式中,这种设计可采用(C)。代购网站商品代购商品购买商品图11A.建造者模式B单例模式C.代理模式D.组合模式52.如下列图12所示,在设计模式中,这种设计可采用(B)。图12A.建造者模式B观察者模式C.代理模式D.组合模式53.下列模式中,属于行为模式的是(B)。A.工厂模式B.观察者模式C.适配器模式D.以上都是54.行为类模式使用(B)在类间分派行为。A.接口B.继承机制C.对象组合D.委托55.原型模式本质上就是对象的(B)。A.引用B.复制C.串行化D.序列化56.以下哪个模式可以利用一个对象,快速地生成一批对象?(C)A.抽象工厂模式B.单例模式C原型模式.D.简单工厂模式二、填空题1.Strategy意图是定义一系列的算法,把它们一个个(封装)起来,并且使它们可相互替换。2.(Strategy模式)模式是一种定义一系列算法的方法。3.Adapter模式有两种类型有:对象Adapter模式、(类Adapter模式)。4.(Adapter适配器)模式使原本接口不兼容而不能一起工作的类可以一起工作。5.组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性。6.桥接模式包括抽象类、扩充抽象类、实现类接口和(具体实现类)四个角色。7.状态模式的关键是引入了一个(抽象类)来专门表示对象的状态,这个类我们叫做抽象状态类,8.享元模式的核心在于(享元工厂类)。9.包括原发器、备忘录和负责人三个角色的模式是(备忘录模式)10.(解释器)模式描述

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功