1.简单工厂 就是一个工厂类 创建类的时候 根据传进来的参数 switch 创建类对象
2.反射工厂 根据传递进来的类的名字 通过反射创建类对象
3.抽象工厂 写一个抽象类 在其中定义若干个创建对象的抽象方法,写继承这个抽象类的类重写这些方法 创建对象
4.工厂方法 写一个接口,在接口中定义创建对象的方法。然后创建实现这个接口的各种类,这些类实现各种创建对象的方法
简单工厂:简单实用,但违反开放封闭;
工厂方法:开放封闭,单一产品;
抽象工厂:开放封闭,多个产品;
反射工厂:可以最大限度的解耦。
学习自圣杰的 工厂模式