From 9dbc6863c9d81783bbc3f085c898ccc605b87066 Mon Sep 17 00:00:00 2001 From: Snailclimb Date: Thu, 28 Jun 2018 21:16:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=AE=BE=E8=AE=A1=E6=A8=A1?= =?UTF-8?q?=E5=BC=8F=E5=86=85=E5=AE=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Java相关/设计模式.md | 81 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/Java相关/设计模式.md b/Java相关/设计模式.md index f04d24c9..32a78ea6 100644 --- a/Java相关/设计模式.md +++ b/Java相关/设计模式.md @@ -1,3 +1,4 @@ +下面是自己学习设计模式的时候做的总结,有些是自己的原创文章,有些是网上写的比较好的文章,保存下来细细消化吧! ## 创建型模式: @@ -10,12 +11,20 @@ > ### 创建型模式系列文章推荐: +- **单例模式:** + [深入理解单例模式——只有一个实例](https://blog.csdn.net/qq_34337272/article/details/80455972) +- **工厂模式:** + [深入理解工厂模式——由对象工厂生成对象](https://blog.csdn.net/qq_34337272/article/details/80472071) +- **建造者模式:** + [深入理解建造者模式 ——组装复杂的实例](http://blog.csdn.net/qq_34337272/article/details/80540059) +- **原型模式:** + [深入理解原型模式 ——通过复制生成实例](https://blog.csdn.net/qq_34337272/article/details/80706444) @@ -33,3 +42,75 @@ > ### 结构型模式系列文章推荐: +- **适配器模式:** + +[深入理解适配器模式——加个“适配器”以便于复用](https://segmentfault.com/a/1190000011856448) + +[适配器模式原理及实例介绍-IBM](https://www.ibm.com/developerworks/cn/java/j-lo-adapter-pattern/index.html) + +- **桥接模式:** + +[设计模式笔记16:桥接模式(Bridge Pattern)](https://blog.csdn.net/yangzl2008/article/details/7670996) + +- **组合模式:** + +[大话设计模式—组合模式](https://blog.csdn.net/lmb55/article/details/51039781) + +- **装饰模式:** + +[java模式—装饰者模式](https://www.cnblogs.com/chenxing818/p/4705919.html) + +[Java设计模式-装饰者模式](https://blog.csdn.net/cauchyweierstrass/article/details/48240147) + +- **外观模式:** + +[java设计模式之外观模式(门面模式)](https://www.cnblogs.com/lthIU/p/5860607.html) + +- **享元模式:** + +[享元模式](http://www.jasongj.com/design_pattern/flyweight/) + +- **代理模式:** + +[代理模式原理及实例讲解 (IBM出品,很不错)](https://www.ibm.com/developerworks/cn/java/j-lo-proxy-pattern/index.html) + +[轻松学,Java 中的代理模式及动态代理](https://blog.csdn.net/briblue/article/details/73928350) + +[Java代理模式及其应用](https://blog.csdn.net/justloveyou_/article/details/74203025) + + +## 行为型模式 + +> ### 行为型模式概述: + +- 行为型模式(Behavioral Pattern)是对在不同的对象之间划分责任和算法的抽象化。 +- 行为型模式不仅仅关注类和对象的结构,而且重点关注它们之间的相互作用。 +- 通过行为型模式,可以更加清晰地划分类与对象的职责,并研究系统在运行时实例对象之间的交互。在系统运行时,对象并不是孤立的,它们可以通过相互通信与协作完成某些复杂功能,一个对象在运行时也将影响到其他对象的运行。 + +**行为型模式分为类行为型模式和对象行为型模式两种:** + +- **类行为型模式:** 类的行为型模式使用继承关系在几个类之间分配行为,类行为型模式主要通过多态等方式来分配父类与子类的职责。 +- **对象行为型模式:** 对象的行为型模式则使用对象的聚合关联关系来分配行为,对象行为型模式主要是通过对象关联等方式来分配两个或多个类的职责。根据“合成复用原则”,系统中要尽量使用关联关系来取代继承关系,因此大部分行为型设计模式都属于对象行为型设计模式。 + +![行为型模式](https://user-gold-cdn.xitu.io/2018/6/28/164467dd92c6172c?w=453&h=269&f=png&s=63270) + +- **职责链模式:** + +[Java设计模式之责任链模式、职责链模式](https://blog.csdn.net/jason0539/article/details/45091639) + +[责任链模式实现的三种方式](https://www.cnblogs.com/lizo/p/7503862.html) + +- **命令模式:** + + + +- **解释器模式:** +- **迭代器模式:** +- **中介者模式:** +- **备忘录模式:** +- **观察者模式:** +- **状态模式:** +- **策略模式:** +- **模板方法模式:** +- **访问者模式:** +