auto commit
This commit is contained in:
parent
94235489f6
commit
d70cf4669d
|
@ -1,25 +1,20 @@
|
|||
<!-- GFM-TOC -->
|
||||
* [一、前言](#一前言)
|
||||
* [二、设计模式概念](#二设计模式概念)
|
||||
* [三、单例模式](#三单例模式)
|
||||
* [四、简单工厂](#四简单工厂)
|
||||
* [五、工厂方法模式](#五工厂方法模式)
|
||||
* [六、抽象工厂模式](#六抽象工厂模式)
|
||||
* [一、概述](#一概述)
|
||||
* [二、单例模式](#二单例模式)
|
||||
* [三、简单工厂](#三简单工厂)
|
||||
* [四、工厂方法模式](#四工厂方法模式)
|
||||
* [五、抽象工厂模式](#五抽象工厂模式)
|
||||
* [参考资料](#参考资料)
|
||||
<!-- GFM-TOC -->
|
||||
|
||||
|
||||
# 一、前言
|
||||
|
||||
文中涉及一些 UML 类图,为了更好地理解,可以先阅读 [UML 类图](https://github.com/CyC2018/Interview-Notebook/blob/master/notes/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E6%80%9D%E6%83%B3.md#%E7%AC%AC%E4%B8%89%E7%AB%A0-uml)。
|
||||
|
||||
# 二、设计模式概念
|
||||
# 一、概述
|
||||
|
||||
设计模式不是代码,而是解决问题的方案,学习现有的设计模式可以做到经验复用。
|
||||
|
||||
拥有设计模式词汇,在沟通时就能用更少的词汇来讨论,并且不需要了解底层细节。
|
||||
|
||||
# 三、单例模式
|
||||
# 二、单例模式
|
||||
|
||||
## 意图
|
||||
|
||||
|
@ -131,7 +126,7 @@ if (uniqueInstance == null) {
|
|||
}
|
||||
```
|
||||
|
||||
# 四、简单工厂
|
||||
# 三、简单工厂
|
||||
|
||||
## 意图
|
||||
|
||||
|
@ -207,8 +202,7 @@ public class Client {
|
|||
}
|
||||
```
|
||||
|
||||
|
||||
# 五、工厂方法模式
|
||||
# 四、工厂方法模式
|
||||
|
||||
## 意图
|
||||
|
||||
|
@ -258,7 +252,7 @@ public class ConcreteFactory2 extends Factory {
|
|||
}
|
||||
```
|
||||
|
||||
# 六、抽象工厂模式
|
||||
# 五、抽象工厂模式
|
||||
|
||||
## 意图
|
||||
|
||||
|
@ -266,7 +260,7 @@ public class ConcreteFactory2 extends Factory {
|
|||
|
||||
## 类图
|
||||
|
||||
<div align="center"> <img src="../pics//5f96e565-0693-47df-80f1-29e4271057b7.png"/> </div><br>
|
||||
<div align="center"> <img src="../pics//920c034c-c212-4f79-9ddb-84e4bb6cd088.png"/> </div><br>
|
||||
|
||||
抽象工厂模式创建的是对象家族,也就是很多对象而不是一个对象,并且这些对象是相关的,也就是说必须一起创建出来。而工厂模式只是用于创建一个对象,这和抽象工厂模式有很大不同。
|
||||
|
||||
|
|
BIN
pics/920c034c-c212-4f79-9ddb-84e4bb6cd088.png
Normal file
BIN
pics/920c034c-c212-4f79-9ddb-84e4bb6cd088.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 40 KiB |
Loading…
Reference in New Issue
Block a user