软件设计模式(JAVA)习题答案.pdf

软件设计模式(JAVA)习题答案.pdf

ID:58933614

大小:1.74 MB

页数:24页

时间:2020-09-18

软件设计模式(JAVA)习题答案.pdf_第1页
软件设计模式(JAVA)习题答案.pdf_第2页
软件设计模式(JAVA)习题答案.pdf_第3页
软件设计模式(JAVA)习题答案.pdf_第4页
软件设计模式(JAVA)习题答案.pdf_第5页
资源描述:

《软件设计模式(JAVA)习题答案.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、.软件设计模式(Java版)习题第1章软件设计模式基础1.1软件设计模式概述1.2UML中的类图1.3面向对象的设计原则一、名词解释1.一个软件实体应当对扩展开放,对修改关闭,即在不修改源代码的基础上扩展一个系统的行为。2.一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中。3.在软件中如果能够使用基类对象,那么一定能够使用其子类对象。4.是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。二、单选择题1.(A)2.(A)3.(A)4.(

2、D)5.(D)6.(A)7.(D)8.(D)9.(D)10.(E)11.(C)12.(C)13.(A)三、多选择题1.(A、B、C、D)2.(A、B)3.(A、D)4.(A、B、C、D)四、填空题1.依赖倒转、迪米特法则、单一职责2.模式名字、目的、问题、解决方案、效果、实例代码3.超类、子类4.开闭5.用户6.依赖倒转7.组合/聚合8.结构型、行为型9.依赖倒转10.开闭11.需求收集是否正确、体系结构的构建是否合理、测试是否完全12.人与人之间的交流13.接口14.名称、目的、解决方案15.对象组合、类继承...16.对象组合17

3、.对象组合、类继承18.抽象类的指针五、简答题1.答:设计模式按类型分为以下三类:1)创建型设计模式:以灵活的方式创建对象集合,用于管理对象的创建。2)结构型设计模式:将己有的代码集成到新的面向对象设计中,用于处理类或对象的组合。3)行为型设计模式:用于描述对类或对象怎样交互和怎样分配职责。2.答:设计模式的主要优点如下:1)设计模式融合了众多专家的经验,并以一种标准的形式供广大开发人员所用,它提供了一套通用的设计词汇和一种通用的语言以方便开发人员之间沟通和交流,使得设计方案更加通俗易懂。2)设计模式使人们可以更加简单方便地复用成功的

4、设计和体系结构,将已证实的技术表述成设计模式也会使新系统开发者更加容易理解其设计思路。设计模式使得重用成功的设计更加容易,并避免那些导致不可重用的设计方案。3)设计模式使得设计方案更加灵活,且易于修改。4)设计模式的使用将提高软件系统的开发效率和软件质量,且在一定程度上节约设计成本。5)设计模式有助于初学者更深入地理解面向对象思想,一方面可以帮助初学者更加方便地阅读和学习现有类库与其他系统中的源代码,另一方面还可以提高软件的设计水平和代码质量。3.答:设计模式一般有如下几个基本要素:模式名称、问题、目的、解决方案、效果、实例代码和相关

5、设计模式,其中的关键元素包括模式名称、问题、解决方案和效果。4.答:正确使用设计模式具有以下优点:⑴可以提高程序员的思维能力、编程能力和设计能力。⑵使程序设计更加标准化、代码编制更加工程化,使软件开发效率大大提高,从而缩短软件的开发周期。⑶使设计的代码可重用性高、可读性强、可靠性高、灵活性好、可维护性强。5.答:根据类与类之间的耦合度从弱到强排列,UML中的类图有以下几种关系:依赖关系、关联关系、聚合关系、组合关系、泛化关系和实现关系。其中泛化和实现的耦合度相等,它们是最强的。...6.答:1)开闭原则(OCP):它要求软件实体应当对

6、扩展开放,对修改关闭;2)里氏替换原则(LSP):它要求继承必须确保超类所拥有的性质在子类中仍然成立;3)依赖倒置原则(DIP):它要求软件设计要面向接口编程,不要面向实现编程;4)单一职责原则(SRP):它要求对象不应该承担太多职责,一个类应该有且仅有一个引起它变化的原因;5)接口隔离原则(ISP):它要求程序员尽量将臃肿庞大的接口拆分成更小的和更具体的接口,让接口中只包含客户感兴趣的方法;6)迪米特法则(LoD):它要求如果两个软件实体无须直接通信,就不应当直接相互调用,而通过第三方转发该调用;7)合成复用原则(CRP):它要求在

7、软件复用时,要尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。第2章创建型模式(上)2.2单例模式2.3原型模式一、单选择题1.(A)2.(B)3.(A)4.(D)5.(C)6.(B)7.(B)二、多选择题1.(C)2.(A,B)3.(A、B)4.(A、B、C)5.(A、C)6.(A、B、C、D)7.(A,B,C,D)三、填空题1.对象的创建、使用分离、耦合度2.创建型3.创建性4.懒汉式单例、饿汉式单例5.抽象原型类、具体原型类四、程序分析题解:本题使用了单例模式,参考类图如下所示:...五、简答题1.答:创建

8、型模式分为以下几种:⑴单例(Singleton)模式:某个类只能生成一个实例,该类提供了一个全局访问点供外部获取该实例,其拓展是有限多例模式。⑵原型(Prototype)模式:将一个对象作为原型,通过对其进行复制而克隆出

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。