php 工厂模式
一、 什么是工厂模式
工厂类调用自身静态方法来生产对象实例
工厂类:负责生成其他对象的类或方法
途径:调用自身静态方法
结果:一个实例对象
工厂模式有一个关键的构造,根据一般原则命名为Factory的静态方法,然而这只是一种原则,虽然工厂方法可以任意命名这个静态还可以接受任意数据的参数,必须返回一个对象。
二、 为什么需要工厂模式
- 工厂模式可以将对象的生产从直接new 一个对象,改成通过调用一个工厂方法生产。这样的封装,代码若需修改new的对象时,不需修改多处new语句,只需更改生产对象方法。
- 若所需实例化的对象可选择来自不同的类,可省略if-else多层判断,给工厂方法传入对应的参数,利用多态性,实例化对应的类。
优点:增加代码的可拓展性,减少业务的耦合性,减少代码量
三、 代码实现
- 工厂类通过不同的参数 返回对应的业务处理类:
- 工程业务接口类 统一定义业务接口:
- 工厂调用类 继承工厂类 接收类型参数 实例化对应工厂对象 执行业务方法:
- 具体业务处理类 实现接口方法: