-
工厂模式
该模式实现了创建者和调用者的分离,它的核心思想是在实例化对象时,用工厂的方法代替new操作,将选择实现类、创建对象统一管理和控制,从而将调用者跟我们的实现类进行解耦。该模式有三个分类:简单工厂模式,工厂方法模式,抽象工厂模式。
今天主要学习的就是简单工厂模式(该分类在工厂模式中属于最简单类型,所以在这不做详细的代码展示)。
-
简单工厂模式
用来生产同一等级结构中的任意产品。(对于增加新的产品,需要修改已有代码)
类关系图:
![](https://img.haomeiwen.com/i788503/b8ed5ca541f14b8d.png)
简单工厂类:
public class SimpleCarFactory {
public static Car createCar(String type) {
if ("Audi" == type) {
return new Audi();
} else if ("Byd" == type) {
return new Byd();
}
return null;
}
}
简单工厂模式也叫静态工厂模式,就是工厂类一般是使用静态方法。通过接收的参数不同来返回不同的对象实例。一个很大的缺点就是,对于新增加产品无能为力(不修改代码的话,是无法扩展的),违法了开闭原则。
网友评论