简单工厂模式(静态工厂模式)
基本概念
- 简单工厂模式属于创建型模式,是工厂模式的一种。
- 简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。
- 定义了一个创建对象的类,由这个类来 封装实例化对象的行为(代码)
工厂方法模式
- 定义了一个创建对象的抽象方法,由子类决定要实例化的类。工厂方法模式将对象的实例化推迟到子类
抽象工厂模式
- 定义了一个 interface 用于创建相关或有依赖关系的对象簇,而无需指明具体的类
- 抽象工厂模式可以将简单工厂模式和工厂方法模式进行整合
- 抽象工厂模式是对简单工厂模式的改进,进一步的抽象
- 将工厂抽象为两成, AbsFactory(抽象工厂)和 具体实现的工厂子类,程序员可以根据创建对象类型使用对应的工厂子类
- 将单个的简单工厂类变成了工厂簇,更利于代码的扩展和维护
工厂模式总结
工厂模式的意义
- 将实例化对象的代码提取出来,放到一个类中同意管理和维护,达到和主项目的依赖关系的解耦合。从而提高项目的扩展性的维护性
三种工厂模式
- 简单工厂模式
- 工厂方法模式
- 抽象工厂模式
工厂模式中的 依赖倒转原则
- 创建对象实例时,不要直接 new 类,而是把这个 new 类的动作放在一个工厂的方法中,并返回。
- 不要让类继承具体类,而是继承抽象类或者实现接口
- 不要覆盖基类中已经实现的方法