一.工厂模式的介绍
工厂模式分三种:
1.简单工厂模式
2.工厂方法模式
3.抽象工厂模式
工厂模式的本质是实例化对象,实现创建者和调用者的分离
面向对象设计的基本原则:
本质都是分工原则
二.简单工厂模式
也叫静态工厂模式,因为工厂类一般使用静态方法。
实现类client02只需要调用工厂类和实现类的接口
只能通过修改代码的方式进行扩展,不满足OLP原则
三.工厂方法模式
客户端需要知道工厂模式的接口和实现,这个满足OLP原则,但是结构复杂,客户端编程困难(相比简单工厂需要知道的接口数量变多)。实际中一般使用简单工厂模式
四.抽象工厂模式
增加产品族
有一个抽象工厂的接口,两个实现抽象工厂的工厂类,两个工厂方法属于两个产品族,一般在很大的项目中才用到
五 比较
很多把工厂模式和单例模式合起来使用,比如spring中IOC容器管理bean对象,以factory结尾的一般都是工厂