1、简单工厂模式
简单工厂模式又叫静态工厂模式,核心为一个工厂类,工厂类中又一个静态工厂方法。静态工厂方法通过传入的参数进行判断从而决定生成哪个实例。
2、工厂方法模式
工厂方法模式在简单工厂模式的基础上,对静态工厂方法进行了抽象,去掉静态工厂中的参数。对象的创建交给了具体工厂。通过不断的添加具体工厂类从而实现“开闭”原则的拓展。另外。正因为对象的创建交给了具体工厂,每个具体工厂负责创建相关对象。从而使原本在简单工厂模式中的if else或者switch判断消除了。
3、静态工厂模式
静态工厂模式是对工厂方法的一个推广。当多个产品之间存在某些联系形成产品族时,工厂方法会造成类的膨胀。抽象工厂规定了产品的关联关系。具体工厂形成了具体的产品族。