23种JAVA设计模式和15种J2的EE设计模式.pdf

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
23种JAVA设计模式和15种J2的EE设计模式

1. JAVA 设计模式 1.1. 创建型模式 1.1.1. Abstract Factory—抽象工厂模式 追MM 少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM 爱吃的东西, 虽然口味有所不同,但不管你带MM 去麦当劳或肯德基,只管向服务员说“来四个鸡 翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 学习java请加乘风老师QQ:2119923892 客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。 消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。 如:如何创建及如何向客户端提供。 1.1.2. Builder—建造模式 MM 最爱听的就是“我爱你”这句话了,见到不同地方的MM,要能够用她们的 方言跟她说这句话哦,我有一个多种语言翻译机,上面每种语言都有一个按键,见到 MM 我只要按对应的键,它就能够用相应的语言说出“我爱你”这句话了,国外的 MM 也可以轻松搞掂,这就是我的“我爱你”builder 。(这一定比美军在伊拉克用的翻 译机好卖) 将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有 不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必 知道产品内部组成的细节。建造模式可以强制实行一种分步骤进行的建造过程。 1.1.3. Factory Method—工厂方法模式 请MM 去麦当劳吃汉堡,不同的MM 有不同的口味,要每个都记住是一件烦人 的事情,我一般采用Factory Method 模式,带着MM 到服务员那儿,说“要一个汉堡”, 具体要什么样的汉堡呢,让MM 直接跟服务员说就行了。 核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做, 成为一个抽象工厂角色,仅负责给出具体工厂类必须实现的接口,而不接触哪一个产 品类应当被实例化这种细节。 1.1.4. Prototype—原始模型模式 跟MM 用QQ 聊天,一定要说些深情的话语了,我搜集了好多肉麻的情话,需 要时只要copy 出来放到QQ 里面就行了,这就是我的情话prototype 了。(100 块钱一 份,你要不要) 通过给出一个原型对象来指明所要创建的对象的类型,然后用复制这个原型对 象的方法创建出更多同类型的对象。原始模型模式允许动态的增加或减少产品类,产 品类不需要非得有任何事先确定的等级结构,原始模型模式适用于任何的等级结构。 缺点是每一个类都必须配备一个克隆方法。 1.1.5. Singleton—单例模式 俺有6 个漂亮的老婆,她们的老公都是我,我就是我们家里的老公Sigleton,她 们只要说道“老公”,都是指的同一个人,那就是我(刚才做了个梦啦,哪有这么好的 事) 学习java请加乘风老师QQ:2119923892 单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个 实例单例模式。单例模式只应在有真正的“单一实例”的需求时才可使用 1.2. 结构型模式 1.2.1. Adapter—适配器(变压器)模式 在朋友聚会上碰到了一个美女Sarah,从香港来的,可我不会说粤语,她不会说 普通话,只好求助于我的朋友kent 了,他作为我和Sarah 之间的Adapter ,让我和Sarah 可以相互交谈了(也不知道他会不会耍我) 把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口原因不 匹配而无法一起工作的两个类能够一起工作。适配类可以根据参数返还一个合适的实 例给客户端。 1.2.2. Bridge—桥梁模式 早上碰到MM ,要说早上好,晚上碰到MM ,要说晚上好;碰到MM 穿了件新 衣服,要说你的衣服好漂亮哦,碰到MM 新做的发型,要说你的头发好漂亮哦。不要 问我“早上碰到MM 新做了个发型怎么说”这种问题,自己用BRIDGE 组合一下不 就行了 将抽象化与实现化脱耦,使得二者可以独立的变化,也

您可能关注的文档

文档评论(0)

liwenhua00 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档