知识大全 关于Java23种设计模式的有趣见解[2]

Posted

篇首语:如果这世界上真有奇迹,那只是努力的另一个名字。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 关于Java23种设计模式的有趣见解[2]相关的知识,希望对你有一定的参考价值。

关于Java23种设计模式的有趣见解[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  装饰模式 装饰模式以对客户端透明的方式扩展对象的功能 是继承关系的一个替代方案 提供比继承更多的灵活性 动态给一个对象增加功能 这些功能可以再动态的撤消 增加由一些基本功能的排列组合而产生的非常大量的功能

   FACADE—我有一个专业的Nikon相机 我就喜欢自己手动调光圈 快门 这样照出来的照片才专业 但MM可不懂这些 教了半天也不会 幸好相机有Facade设计模式 把相机调整到自动档 只要对准目标按快门就行了 一切由相机自动调整 这样MM也可以用这个相机给我拍张照片了

  门面模式 外部与一个子系统的通信必须通过一个统一的门面对象进行 门面模式提供一个高层次的接口 使得子系统更易于使用 每一个子系统只有一个门面类 而且此门面类只有一个实例 也就是说它是一个单例模式 但整个系统可以有多个门面类

   FLYWEIGHT—每天跟MM发短信 手指都累死了 最近买了个新手机 可以把一些常用的句子存在手机里 要用的时候 直接拿出来 在前面加上MM的名字就可以发送了 再不用一个字一个字敲了 共享的句子就是Flyweight MM的名字就是提取出来的外部特征 根据上下文情况使用

  享元模式 FLYWEIGHT在拳击比赛中指最轻量级 享元模式以共享的方式高效的支持大量的细粒度对象 享元模式能做到共享的关键是区分内蕴状态和外蕴状态 内蕴状态存储在享元内部 不会随环境的改变而有所不同 外蕴状态是随环境的改变而改变的 外蕴状态不能影响内蕴状态 它们是相互独立的 将可以共享的状态和不可以共享的状态从常规类中区分开来 将不可以共享的状态从类里剔除出去 客户端不可以直接创建被共享的对象 而应当使用一个工厂对象负责创建被共享的对象 享元模式大幅度的降低内存中对象的数量

   PROXY—跟MM在网上聊天 一开头总是 hi 你好 你从哪儿来呀? 你多大了? 身高多少呀? 这些话 真烦人 写个程序做为我的Proxy吧 凡是接收到这些话都设置好了自动的回答 接收到其他的话时再通知我回答 怎么样 酷吧

  代理模式 代理模式给某一个对象提供一个代理对象 并由代理对象控制对源对象的引用 代理就是一个人或一个机构代表另一个人或者一个机构采取行动 某些情况下 客户不想或者不能够直接引用一个对象 代理对象可以在客户和目标对象直接起到中介的作用 客户端分辨不出代理主题对象与真实主题对象 代理模式可以并不知道真正的被代理对象 而仅仅持有一个被代理对象的接口 这时候代理对象不能够创建被代理对象 被代理对象必须有系统的其他角色代为创建并传入

  行为模式

   CHAIN OF RESPONSIBLEITY—晚上去上英语课 为了好开溜坐到了最后一排 哇 前面坐了好几个漂亮的MM哎 找张纸条 写上 Hi 可以做我的女朋友吗?如果不愿意请向前传 纸条就一个接一个的传上去了 糟糕 传到第一排的MM把纸条传给老师了 听说是个老处女呀 快跑!

  责任链模式 在责任链模式中 很多对象由每一个对象对其下家的引用而接

  起来形成一条链 请求在这个链上传递 直到链上的某一个对象决定处理此请求 客户并不知道链上的哪一个对象最终处理这个请求 系统可以在不影响客户端的情况下动态的重新组织链和分配责任 处理者有两个选择 承担责任或者把责任推给下家 一个请求可以最终不被任何接收端对象所接受

   MAND—俺有一个MM家里管得特别严 没法见面 只好借助于她弟弟在我们俩之间传送信息 她对我有什么指示 就写一张纸条让她弟弟带给我 这不 她弟弟又传送过来一个MAND 为了感谢他 我请他吃了碗杂酱面 哪知道他说 我同时给我姐姐三个男朋友送MAND 就数你最小气 才请我面

  命令模式 命令模式把一个请求或者操作封装到一个对象中 命令模式把发出命令的责任和执行命令的责任分割开 委派给不同的对象 命令模式允许请求的一方和发送的一方独立开来 使得请求的一方不必知道接收请求的一方的接口 更不必知道请求是怎么被接收 以及操作是否执行 何时被执行以及是怎么被执行的 系统支持命令的撤消

   INTERPRETER—俺有一个《泡MM真经》 上面有各种泡MM的攻略 比如说去吃西餐的步骤 去看电影的方法等等 跟MM约会时 只要做一个Interpreter 照着上面的脚本执行就可以了

  解释器模式 给定一个语言后 解释器模式可以定义出其文法的一种表示 并同时提供一个解释器 客户端可以使用这个解释器来解释这个语言中的句子 解释器模式将描述怎样在有了一个简单的文法后 使用模式设计解释这些语句 在解释器模式里面提到的语言是指任何解释器对象能够解释的任何组合 在解释器模式中需要定义一个代表文法的命令类的等级结构 也就是一系列的组合规则 每一个命令对象都有一个解释方法 代表对命令对象的解释 命令对象的等级结构中的对象的任何排列组合都是一个语言

   ITERATOR—我爱上了Mary 不顾一切的向她求婚

  Mary 想要我跟你结婚 得答应我的条件

  我 什么条件我都答应 你说吧

  Mary 我看上了那个一克拉的钻石

  我 我买 我买 还有吗?

  Mary 我看上了湖边的那栋别墅

  我 我买 我买 还有吗?

  Mary 你的小弟弟必须要有 cm长

  我脑袋嗡的一声 坐在椅子上 一咬牙 我剪 我剪 还有吗?

  ……

  迭代子模式 迭代子模式可以顺序访问一个聚集中的元素而不必暴露聚集的内部表象 多个对象聚在一起形成的总体称之为聚集 聚集对象是能够包容一组对象的容器对象 迭代子模式将迭代逻辑封装到一个独立的子对象中 从而与聚集本身隔开 迭代子模式简化了聚集的界面 每一个聚集对象都可以有一个或一个以上的迭代子对象 每一个迭代子的迭代状态可以是彼此独立的 迭代算法可以独立于聚集角色变化

cha138/Article/program/Java/gj/201311/27769

相关参考

知识大全 关于Java23种设计模式的有趣见解[1]

关于Java23种设计模式的有趣见解[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  创建型

知识大全 关于Java23种设计模式的有趣见解[3]

关于Java23种设计模式的有趣见解[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  MED

知识大全 关于23种设计模式的有趣见解

  创建型模式FACTORY—追MM少不了请吃饭了麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西虽然口味有所不同但不管你带MM去麦当劳或肯德基只管向服务员说来四个鸡翅就行了麦当劳和肯德基就是生产鸡翅的F

知识大全 从追MM谈Java的23种设计模式[2]

经典:从追MM谈Java的23种设计模式[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  桥

知识大全 Java开发中的23种设计模式

Java开发中的23种设计模式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 23种设计模式的Java版--Singleton(单例)

23种设计模式的Java版--Singleton(单例)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 从追MM谈Java的23种设计模式[1]

经典:从追MM谈Java的23种设计模式[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  设

知识大全 从追MM谈Java的23种设计模式[3]

经典:从追MM谈Java的23种设计模式[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  I

知识大全 空性是什么意思

空性是什么意思空性以般若剑突破我们对世间的概念化的见解之后,我们发现空性或无性,其中全无二元对立,亦无概念化。关于此一问题,最著名的佛陀法教见于《般若波罗蜜多心经》;有趣的是佛陀在此经中简直未发一言,

知识大全 java的10种设计模式介绍

   正常情况下一个设计模式描述了一个被证实可行的方案这些方案非常普遍是具有完整定义的最常用的模式一般模式有个基本要素模式名称(patternname)问题(proble