生动理解java设计模式

1、简单工厂模式:女娲抟土造人

生动理解java设计模式
1、女娲是一个工厂类,也就是简单工厂模式中的核心角色
2、具体的一个个的人,是简单工厂模式里面的具体产品角色
3、抽象的人便是最早只存在女娲头脑里面的一个想法,这个抽象的想法规定了所有具体的人必须具有接口:
生动理解java设计模式

2、工厂方法模式:女娲举绳造人

生动理解java设计模式
1、女娲神绳是系统的中心,但是只声明了“举绳造人”的方法,而没有实现它,真正做到的是工厂类,也就是阴绳和阳绳。
生动理解java设计模式

3、抽象工厂模式:女娲造万物

生动理解java设计模式
从这里就引入了产品族的概念:
生动理解java设计模式
继续分析,可以抽象为如下:
1、“神绳”接口作为抽象工厂角色
2、“人”接口作为人类抽象角色,在女娲造人之前,一定在头脑里有了一个对人的样子的想象,这个想象就是对人的抽象
3、“兽”接口作为兽类抽象角色,在女娲造各种野兽之前,一定在头脑里有了一个对野兽的想象,这个想象就是对野兽的抽象。
生动理解java设计模式

4、建造模式:众神造人的神话故事

生动理解java设计模式
生动理解java设计模式

5、适配器模式:电源转换器

它的主要作用是在新接口和老接口之间进行适配。它非常像我们出国旅行时带的电源转换器。为了举这个例子,我还特意去京东上搜了一下电源转换器,确实看到了很多地方的标准不一样。我们国家的电器使用普通的扁平两项或三项插头,而去外国的话,使用的标准就不一样了,比如德国,使用的是德国标准,是两项圆头的插头。如果去德国旅游,那么我们使用的手机充电器插头无法插到德国的插排中去,那就意味着我们无法给手机充电。怎样解决这个问题呢?只要使用一个电源转化器就行了。

6、装饰器模式:猴子变身

生动理解java设计模式

7、代理模式:高老庄的故事

生动理解java设计模式

8、原型模式:深克隆和浅克隆