一、6个创建型模式。
1. 简单工厂模式
简单工厂其实就是把客户端调用层要创建何种对象的判断代码挪到一个专门的类——简单工厂类中。初步屏蔽了如何创建的过程。
2. 工厂方法模式
工厂方法模式将产品和工厂都进行了一层抽象,如下图所示。因此对于具体对象的调用代码来说,直接使用product类对象即可。但是对于创建过程,和简单工厂相比,等同于把判断又挪到了客户端,由客户端决定调用那个具体工厂。新增一个产品时,需要新增一个具体产品类和一个具体工厂。
3. 抽象工厂
抽象工厂最主要的特点顾名思义是工厂更抽象,简单地讲,就是比工厂方法往上提了一层。其实就是支持更多的产品了。
实际做法就是在抽象工厂中增加了更多的成员方法来创建不同的产品而已。
4. 单例模式
单例模式就简单了,就是将构造方法设置为private,使任何人不能随意的创建该对象,然后提供一个static的方法来创建对象。简单地讲就是讲创建对象的过程进行了管理。
5. 原型模式
原型模式是通过在抽象类内部新增一个clone方法,对已有对象的小部分属性做修改。达到快速创建对象的目的。
6. 建造者模式
建造者模式和抽象工厂有点类似,他们的主要区别是建造者模式创建的是一个对象,而且这一个对象的创建过程比较复杂,需要一步一步的创建。而抽象工厂是一次性创建N个对象。而且建造者模式不需要再提供一个抽象的工厂类,直接使用具体类来完成创建。