![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 93
yaoshengting
这个作者很懒,什么都没留下…
展开
-
Visitor模式
Visitor模式,在不修改已有程序结构的前提下,通过添加额外的“访问者”来完成对已有代码功能的提升。 Visitor模式的组成结构: 1) 访问者角色(Visitor):声明一个访问接口。接口的名称和方法的参数标识了向访问者发送请求的元素角色。这样访问者就可以通过该元素角色的特定接口直接访问它。 2) 具体访问者角色(Concrete Visitor):转载 2016-01-27 15:11:41 · 472 阅读 · 0 评论 -
《JAVA与模式》之简单工厂模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述简单工厂模式的:简单工厂模式是类的创建模式,又叫做静态工厂方法(Static Factory Method)模式。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。 那么简单工厂模式是在什么场景下使用呢,下面就以本人的理解举例说明: 就拿登录功能来说,假如应用系统需要支持多种登录方式如:口令认证、域认证(口令认证通常是去数据转载 2016-03-10 19:06:09 · 343 阅读 · 0 评论 -
《JAVA与模式》之工厂方法模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述工厂方法模式的: 工厂方法模式是类的创建模式,又叫做虚拟构造子(Virtual Constructor)模式或者多态性工厂(Polymorphic Factory)模式。 工厂方法模式的用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。 那么工厂方法模式是在什么场景下使用呢,下面就以本人的理解举例说明:转载 2016-03-10 19:00:41 · 285 阅读 · 0 评论 -
《JAVA与模式》之合成模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述合成(Composite)模式的: 合成模式属于对象的结构模式,有时又叫做“部分——整体”模式。合成模式将对象组织到树结构中,可以用来描述整体与部分的关系。合成模式可以使客户端将单纯元素与复合元素同等看待。 合成模式 合成模式把部分和整体的关系用树结构表示出来。合成模式使得客户端把一个个单独的成分对象和由它们复转载 2016-03-10 11:59:00 · 477 阅读 · 0 评论 -
《JAVA与模式》之适配器模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述适配器(Adapter)模式的: 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 适配器模式的用途 用电器做例子,笔记本电脑的插头一般都是三相的,即除了阳极、阴极外,还有一个地极。而有些地方的电源插座却只有两极,没有地极。电源插座与笔记本电脑的转载 2016-03-09 15:37:19 · 283 阅读 · 0 评论 -
《JAVA与模式》之装饰模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述装饰(Decorator)模式的: 装饰模式又名包装(Wrapper)模式。装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。 装饰模式的结构 装饰模式以对客户透明的方式动态地给一个对象附加上更多的责任。换言之,客户端并不会觉得对象在装饰前和装饰后有什么不同。装饰模式可以在不使用创造更多子类的情转载 2016-03-08 13:10:59 · 301 阅读 · 0 评论 -
史上最全设计模式导学目录(完整版)
圣诞献礼! 2012年-2013年,Sunny在CSDN技术博客中陆续发表了100多篇与设计模式学习相关的文章,涵盖了七个面向对象设计原则和24个设计模式(23个GoF设计模式 + 简单工厂模式),为了方便大家学习,现将所有文章的链接进行了整理,希望能给各位带来帮助! 祝大家圣诞节快乐! 花絮:本文的工作量大大超过之前的估计,几乎整个平安夜都花在它身转载 2016-03-10 10:22:34 · 742 阅读 · 0 评论 -
Java 代理模式和装饰者模式的区别
http://www.cnblogs.com/onlywujun/archive/2013/03/28/2985887.html 学习AOP时,教材上面都说使用的是动态代理,可是在印象中代理模式一直都是控制访问什么的,怎么又动态增加行为了,动态增加行为不是装饰器模式吗?于是 找了很多资料,想弄清楚这两者之间到底有什么区别。结果发现这一篇英文文章讲的很清晰,就翻译一下,供参考。转载 2016-02-02 16:39:27 · 1981 阅读 · 2 评论 -
《java与模式》笔记(六) 合成/聚合复用原则
转自:http://blog.csdn.net/plusir/article/details/1099824 ☆ 合成/聚合复用原则经常又叫做合成复用原则。该原则就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分:新的对象通过向这些对象的委派达到复用已有功能的目的。 ξ 10.1 合成与聚合的区别 合成和聚合均是关联的特殊情况。聚合用来表示“拥有”关系或者整体与部分转载 2016-03-09 11:54:04 · 666 阅读 · 0 评论 -
Strategy策略模式在jdk中的应用
在Java的集合框架中,经常需要通过构造方法传入一个比较器Comparator,或者创建比较器传入Collections的静态方法中作为方法参数,进行比较排序等,使用的是策略模式。 在Java SE开发中,用户需要对容器对象Container中的成员对象如按钮、文本框等GUI控件进行布局(Layout),在程序运行期间由客户端动态决定一个Container对象如何布转载 2016-03-19 20:36:25 · 3352 阅读 · 0 评论 -
JDK中设计模式
本文主要是归纳了JDK中所包含的设计模式,包括作用和其设计类图。 首先来个总结,具体的某个模式可以一个一个慢慢写,希望能对研究JDK和设计模式有所帮助。 一、设计模式是什么 (1)反复出现问题的解决方案 (2)增强软件的灵活性 (3)适应软件不断变化 二、学习JDK中设计模式的好处 (1)借鉴优秀代码的设计,有助于提高代码设计能力 (2)JDK的设计中体现了大多数设计模式,转载 2016-03-19 21:11:47 · 485 阅读 · 0 评论 -
JDK中的设计模式应用实例
在JDK(Java Development Kit)类库中,开发人员使用了大量设计模式,正因为如此,我们可以在不修改JDK源码的前提下开发出自己的应用软件,本文列出了部分JDK中的模式应用实例,有兴趣的童鞋可以深入研究,看看前Sun公司的开发人员是如何在实际框架开发中运用设计模式的,,Sunny认为,研究JDK类库中的模式实例也不失为学习如何使用设计模式的一个好方式,。 创建型模式转载 2016-03-19 20:48:30 · 980 阅读 · 0 评论 -
《JAVA与模式》之访问者模式
在阎宏博士的《JAVA与模式》一书中开头是这样描述访问者(Visitor)模式的: 访问者模式是对象的行为模式。访问者模式的目的是封装一些施加于某种数据结构元素之上的操作。一旦这些操作需要修改的话,接受这个操作的数据结构则可以保持不变。 分派的概念 变量被声明时的类型叫做变量的静态类型(Static Type),有些人又把静态类型叫做明显类型(Apparent Typ转载 2016-01-27 16:51:50 · 521 阅读 · 0 评论 -
Java设计模式之访问者模式
定义 封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。 [java] view plain copy print? class A { public void method1(){ System.out.println("我是A");转载 2016-03-07 21:09:14 · 318 阅读 · 0 评论 -
java动态代理(JDK和cglib)
JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。 按照代理的创建时期,代理类可以分为转载 2016-01-27 15:09:55 · 324 阅读 · 0 评论 -
LoveLion老师的java设计模式之工厂三兄弟之工厂方法模式
简单工厂模式虽然简单,但存在一个很严重的问题。当系统中需要引入新产品时,由于静态工厂方法通过所传入参数的不同来创建不同的产品,这必定要修改工厂类的源代码,将违背“开闭原则”,如何实现增加新产品而不影响已有代码?工厂方法模式应运而生,本文将介绍第二种工厂模式——工厂方法模式。 1 日志记录器的设计 Sunny软件公司欲开发一个系统运行日志记转载 2016-03-11 12:30:33 · 693 阅读 · 0 评论