java设计模式考试题PDF.pdf
JAVA 考试试卷及答案页脚内容1 1、设计模式一般用来解决什么样的问题( a) A.同一问题的不同表相B不同问题的同一表相C. 不同问题的不同表相D.以上都不是2、下列属于面向对象基本原则的是( c ) A.继承B.封装 C. 里氏代换D都不是3、Open-Close 原则的含义是一个软件实体( a ) A.应当对扩展开放,对修改关闭. B.应当对修改开放,对扩展关闭C. 应当对继承开放,对修改关闭D.以上都不对4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用(a )模式。A.创建型B.结构型 C行为型 D.以上都可以5、要依赖于抽象,不要依赖于具体。即针对接口编程,不要针对实现编程,是( d )的表述A.开-闭原则JAVA 考试试卷及答案页脚内容2 B.接口隔离原则C. 里氏代换原则D.依赖倒转原则6、依据设计模式思想 ,程序开发中应优先使用的是( a ) 关系实现复用。A, 委派 B.继承C创建D.以上都不对复用方式:继承和组合聚合(组合委派)7、设计模式的两大主题是 ( d ) A.系统的维护与开发B 对象组合与类的继承C. 系统架构与系统开发D.系统复用与系统扩展8、单子模式中 ,两个基本要点 ( a b )和单子类自己提供单例A .构造函数私有B.唯一实例C. 静态工厂方法D.以上都不对9、下列模式中 ,属于行为模式的是 ( b ) A.工厂模式B观察者C适配器以上都是JAVA 考试试卷及答案页脚内容3 10、“ 不要和陌生人说话 ” 是( d )原则的通俗表述A.接口隔离B.里氏代换C. 依赖倒转D.迪米特:一个对象应对其他对象尽可能少的了解11 、构造者的的退化模式是通过合并(c )角色完成退化的。A.抽象产品B产品C创建者D使用者12、单子(单例,单态)模式类图结构如下:下列论述中,关于 ”0.1 ”表述的不正确的是 ( d ) A.1表示,一个单例类中 ,最多可以有一个实例 . B.”0.1 ”表示单例类中有不多于一个的实例C.0表示单例类中可以没有任何实例D.0表示单例类可以提供其他非自身的实例13、对象适配器模式是(a )原则的典型应用。A.合成聚合复用原则B.里式代换原则C. 依赖倒转原则D.迪米特法则JAVA 考试试卷及答案页脚内容4 14、静态工厂的核心角色是(a)A.抽象产品B.具体产品C. 静态工厂D.消费者15、下列关于静态工厂与工厂方法表述错误的是:(a )A.两者都满足开闭原则:静态工厂以if else方式创建对象,增加需求的时候会修改源代码B.静态工厂对具体产品的创建类别和创建时机的判断是混和在一起的,这点在工厂方法中C. 不能形成静态工厂的继承结构D.在工厂方法模式中,对于存在继承等级结构的产品树,产品的创建是通过相应等级结构的工厂创建的。16、在观察者模式中,表述错误的是(c )A.观察者角色的更新是被动的。B.被观察者可以通知观察者进行更新C. 观察者可以改变被观察者的状态,再由被观察者通知所有观察者依据被观察者的状态进行。D.以上表述全部错误。17.对于违反里式代换原则的两个类,可以采用的候选解决方案错误的是:(d )JAVA 考试试卷及答案页脚内容5 A.创建一个新的抽象类C, 作为两个具体类的超类,将A 和 B 共同的行为移动到C 中,从而解决 A和B 行为不完全一致的问题。B.将 B到 A的继承关系改组成委派关系。C. 区分是 “IS-a” 还是”Hasa” 。如果是 “Is -a” ,可以使用继承关系,如果是”Hasa” 应该改成委派关系D.以上方案错误18.对象组合的有点表述不当的是(d )A. 容器类仅能通过被包含对象的接口来对其进行访问。B. “黑盒” 复用,封装性好,因为被包含对象的内部细节对外是不可见。C. 通过获取指向其它的具有相同类型的对象引用,可以在运行期间动态地定义(对象的)组合D.造成极其严重的依赖关系。19.关于继承表述错误的是:(d )A.继承是一种通过扩展一个已有对象的实现,从而获得新功能的复用方法。B.泛化类(超类)可以显式地捕获那些公共的属性和方法。特殊类(子类)则通过附加属性和方法来进行实现的扩展。C. 破坏了封装性,因为这会将父类的实现细节暴露给子类。D.继承本质上是 “ 白盒复用 ” ,对父类的修改,不会影响到子类。JAVA 考试试卷及答案页脚内容6 20.对于依赖倒转的表述错误的是(e )A.依赖于抽象而不依赖于具体,也就是针对接口编程。B.依赖倒转的接口并非语法意义上的接口,而是,一个类对其他对象进行调用时,所知道的方法集合。C. 从选项 B的角度论述,一个对象可以有多个接口。D.实现了同一接口的对象,可以在运行期间,顺利地进行替换。而且不必知道所示用的对象是那个实现类的实例。E.此题没有正确答案。21.面向对象的六条基本原则包括:开闭原则,里式代换原则,合成聚合原则以及(依赖倒转),(迪米特法则),(单一原则),(接口隔离?)。22.在存在继承关系的情况下,方法向(超类)方向集中,而数据向(子类)方向集中。23.适配器模式,分为类的适配器和对象的适配器两种实现。其中类的适配器采用的是(继承)关系,而对象适配器采用的是(组合聚合)关系。JAVA 考试试卷及答案页脚内容7 24.设计模式的基本要素有(名字),(意图 ),(问题 ),( 解决方案 ),(参与者与协作者),( 实现),(一般性结构)。25.创立型模式的根本意图是要把 (对象的创建) 和(使用分离) 的责任进行分离, 从而降低系统的 (耦合度)。26.工厂模式分为 (简单工厂 ),(工厂方法 ),(抽象工厂 )三种类型27.门面模式是 (迪米特 )法则的典型运用28.MVC 模型的基本工作原理是基于(观察者 )模式,实现是基于(命令)模式29.设计模式的思想根源是 (开闭)基本原则的宏观运用 ,本质上是没有任何模式的, 发现模式的人永远是大师 ,而死守模式的人 ,最对只能是一个工匠 .