- 1、本文档共46页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
生成器模式特点 生成器模式优点: 他使你可以改变一个产品的内部表示 它将构造代码和表示代码分开 它使你可对构造过程进行更精细的控制 Java设计模式---创建模式 创建模式---单态模式(Singleton) Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。在很多操作中,比如建立目录、数据库连接都需要这样的单线程操作。 还有,Singleton能够被状态化;这样,多个单态类在一起就可以作为一个状态仓库一样向外提供服务,比如,你要论坛中的帖子计数器,每次浏览一次需要计数,单态类能否保持住这个计数,并且能synchronize的安全自动加1,如果你要把这个数字永久保存到数据库,你可以在不修改单态接口的情况下方便的做到。 另外方面,Singleton也能够被无状态化,提供工具性质的功能。 Java设计模式---结构模式 结构模式 外观模式(Facade) 代理模式(Proxy) 适配器模式(Adapter) 组合模式(Composite) 装饰模式(Decorator) 桥接模式(Bridge) 享元模式(Flyweight) Java设计模式---外观模式 结构模式---外观模式(Facade) 为子系统中的一组接口提供一个一致的界面,例如:数据库JDBC的应用。 Java设计模式---代理模式 结构模式---代理模式(Proxy)对于开销很大的对象,只有在使用它时才创建,使用代理原则可以为我们节省很多宝贵的Java内存。 Java设计模式---适配器模式 结构模式---适配器模式(Adapter)如何将两个不兼容的类纠合在一起使用,通常的解决方案是:修改各自类的接口,但是如果我们没有源代码,或者我们不愿意为了一个应用而修改各自的接口,怎么办? Java设计模式---组合模式 结构模式---组合模式(Composite)将对象组合成树形结构以表示“整体—部分”的层次结构。Composite模式使单个对象和组合对象的使用具有一致性。Composite将遍历(Iterator)整个树形结构,寻找同样包含这个方法的对象并实现调用执行。 * * * * * Java设计模式 Java设计模式 软件设计模式基础 面向对象设计原则 创建模式 结构模式 行为模式 软件设计模式基础 什么是设计模式 广义讲,软件设计模式是可解决一类软件问题并能重复使用的软件设计方案 狭义讲,设计模式是对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述。是在类和对象的层次描述的可重复使用的软件设计问题的解决方案 模式体现的是程序整体的构思,所以有时候它也会出现在分析或者是概要设计阶段 模式的核心思想是通过增加抽象层,把变化部分从那些不变部分里分离出来 软件设计模式基础 模式的基本要素 模式名称(Pattern Name) 问题(Problem):描述应该在何时使用模式。解释了设计问题和问题存在的前因后果,可能还描述模式必须满足的先决条件 解决方案(Solution):描述了设计的组成成分、相互关系及各自的职责和协作方式。模式就像一个模板,可应用于多种场合,所以解决方案并不描述一个具体的设计或实现,而是提供设计问题的抽象描述和解决问题所采用的元素组合(类和对象) 效果(consequences ):描述模式的应用效果及使用模式应权衡的问题 软件设计模式基础 如何描述设计模式 模式名和分类:模式名简介的描述了模式的本质。 意图:设计模式是做什么的?它的基本原理和意图是什么?它解决的是什么样的特定设计问题? 别名:模式的其他名称 动机:说明一个设计问题以及如何用模式中的类、对象来解决该问题的特定情景 适用性:什么情况下可以使用该设计模式?该模式可用来改进哪些不良设计?如何识别这些情况? 结构:采用对象建模技术对模式中的类进行图形描述 参与者:指设计模式中的类和(或)对象以及它们各自的职责 软件设计模式基础 如何描述设计模式 协作:模式的参与者如何协作以实现其职责 效果:模式如何支持其目标?使用模式的效果和所需做的权衡取舍?系统结构的哪些方面可以独立改变? 实现:实现模式时需了解的一些提示、技术要点及应避免的缺陷,以及是否存在某些特定于实现语言的问题 代码示例:用来说明怎样实现该模式的代码片段 已知应用:实际系统中发现的模式的例子 相关模式:与这个模式紧密相关的模式有哪些?其不同之处是什么?这个模式应与哪些其他模式一起使用? 动手实践 从两幅扑克牌中任意抽取10张牌,打印出相同的牌 面向对象设计原则 面向对象设计原则 单一职责原则(SRP,Single Responsibility Principle) 开放封闭原则(OCP,Open Closed Principle) 依赖倒转原则(DIP,De
您可能关注的文档
- 贵州省专业技术人员在线学习平台考试试卷附件.docx
- 有关行为主义人工智能研究综述_徐心和.pdf
- 高等渗流力学作业-完整版教材.pdf
- 第十二章 vi命令大全.pdf
- 第十一章 gateway技术.doc
- 第四章 EPF10K40RC240-3中文资料(Altera)中文数据手册「EasyDatasheet - 矽搜」.pdf
- 第四章 ERP客户化开发常用语句.doc
- 第五章 Cognos Transformer指标值属性设置案例.pdf
- 第6章 java_8多线程 课件.ppt
- 第二章 MySQL数据库测试工具.pdf
- 2024年粉碎机项目资金申请报告代可行性研究报告.docx
- 2024年三七项目资金需求报告代可行性研究报告.docx
- 2024年LNG装置项目资金筹措计划书代可行性研究报告.docx
- 2024年造纸印染污染治理项目资金需求报告代可行性研究报告.docx
- 2024年卫星云图接收设备项目资金筹措计划书代可行性研究报告.docx
- 2024年医用监护仪项目资金筹措计划书代可行性研究报告.docx
- 2024年油份测定仪项目资金需求报告代可行性研究报告.docx
- 2024年合金铸球段项目资金需求报告代可行性研究报告.docx
- 2024年智慧停车项目资金申请报告代可行性研究报告.docx
- 2024年木器漆项目资金筹措计划书代可行性研究报告.docx
文档评论(0)