工厂模式简介
工厂模式用于对象的创建,使得客户从具体的产品对象中被解耦。
三种工厂设计模式的使用:
- 简单工厂模式(Simple Factory)
- 工厂方法模式(Factory Method)
- 抽象工厂模式(Abstract Factory)
1、简单工厂设计模式
定义: 定义了一个创建对象的类,由这个类来封装实例化对象的行为
角色:
- 1、抽象产品类
- 2、具体产品类
- 3、具体工厂 类
使用说明:
- 先将产品类抽象出来,比如,苹果和梨都属于水果。
- 抽象出来一个水果类 Fruit,苹果和梨就是具体的产品类。
- 然后创建一个水果工厂,分别用来创建苹果和梨。
2、工厂方法设计模式
定义: 定义了一个创建对象的抽象方法,由子类决定要实例化的类。工厂方
法模式将对象的实例化推迟到子类
角色:
- 1、抽象产品类
- 2、具体产品类
- 3、抽象工厂类
- 4、具体工厂类
3、抽象工厂设计模式
定义:为创建一组相关或者是相互依赖的对象提供的一个接口,而不需要指定它们的具体类。
角色:
- 1、抽象产品类
- 2、具体产品类
- 3、抽象工厂类
- 4、具体工厂类
抽象工厂和工厂方法的模式基本一样,区别在于,工厂方法是生产一个具体的产品,而抽象工厂可以用来生产一组相同,有相对关系的产品;重点在于一组,一批,一系列。
工厂模式小结
- 工厂模式的意义
将实例化对象的代码提取出来,放到一个类中统一管理和维护,达到和主项目的依赖关系的解耦。从而提高项目的扩展和维护性。
-
三种工厂模式 (简单工厂模式、工厂方法模式、抽象工厂模式)
-
设计模式的依赖抽象原则