Java 中的 23 种设计模式汇总

分类

Java 设计模式大体上分为三类:

  • 创建型设计模式 (5 种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式;
  • 结构型设计模式 (7 种):适配器模式、装饰器模式、代理模式、组合模式、外观模式、享元模式、桥接模式;
  • 行为型设计模式 (11 种):解释器模式、模板模式、访问者模式、中介者模式、策略模式、备忘录模式、状态模式、观察者模式、迭代器模式、命令模式、职责链;
    7c942d1d475a4b7fb036ae5baf3486a8.png

解释

具体三种不同设计模式分类解释:

  • 创建型模式: 在软件设计中对象的创建和对象的使用是分开的,因为对象的创建会消耗掉系统的很多资源,所以会单独对对象的创建进行研究,从而能够高效地创建对象就是创建型模式要探讨的问题;
  • 结构型模式: 如何设计对象的结构、继承和依赖关系会影响到后续程序的维护性、代码的健壮性、耦合性等,也是很多开发者需要注意的地方;
  • 行为型模式: 行为模式不仅描述对象或类的模式,还描述它们之间的通信模式;这些模式刻画了在运行时难以跟踪复杂的控制流,它们将你的注意力从控制流转移到对象间的联系方式上来;行为类模式使用继承机制在类间分派行为,如:模板模式;行为型模式则使用对象聚合、组合而不是继承,一些行为对象模式描述了一组对等的对象怎样相互协作以完成其中任一对象都无法单独完成的任务,如:职责链、中介者和观察者模式等。

设计模式列表

创建型模式

Java 设计模式——单例模式 ](http://www.yz1618.cn/article/1542251741958)

Java 设计模式——简单(静态)工厂模式 ](http://www.yz1618.cn/article/1542252346033)

Java 设计模式——工厂方法模式 ](http://www.yz1618.cn/article/1542253501817)

Java 设计模式——抽象工厂模式 ](http://www.yz1618.cn/article/1542255195314)

Java 设计模式——建造者模式 ](http://www.yz1618.cn/article/1542263354406)

Java 设计模式——原型模式 ](http://www.yz1618.cn/article/1542266323266)

结构型模式

Java 设计模式——享元模式 ](http://www.yz1618.cn/article/1542267492577)

Java 设计模式——外观模式 ](http://www.yz1618.cn/article/1542268943256)

Java 设计模式——代理模式 (SpringAOP 的实现原理) ](http://www.yz1618.cn/article/1542273703864)

Java 设计模式——装饰者模式 ](http://www.yz1618.cn/article/1542274406615)

Java 设计模式——桥接模式 ](http://www.yz1618.cn/article/1542275372571)

Java 设计模式——适配器模式 ](http://www.yz1618.cn/article/1542276056121)

行为型模式

Java 设计模式——迭代器模式 ](http://www.yz1618.cn/article/1542279559352)

Java 设计模式——访问者模式 ](http://www.yz1618.cn/article/1542281274554)

Java 设计模式——中介者模式 ](http://www.yz1618.cn/article/1542341092542)

Java 设计模式——策略模式 ](http://www.yz1618.cn/article/1542347583113)

Java 设计模式——观察者模式 ](http://www.yz1618.cn/article/1542351264099)

Java 设计模式——命令模式 ](http://www.yz1618.cn/article/1542352673471)

Java 设计模式——备忘录模式 ](http://www.yz1618.cn/article/1542354257001)

Java 设计模式——模板模式 ](http://www.yz1618.cn/article/1542355407249)

Java 设计模式——状态模式 ](http://www.yz1618.cn/article/1542356443655)

Java 设计模式——责任链模式 ](http://www.yz1618.cn/article/1542357977678)