1.2 多个工厂方法模式
1.3 静态工厂方法模式
* 普通工厂模式就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建
* 多个工厂方法模式,是对普通工厂方法模式的改進在普通工厂方法模式中, * 如果传递的字符串出错则不能正确创建对象,而多个工厂方法模式是提供多个工厂方法分别创建对象
* 静態工厂方法模式,将上面的多个工厂方法模式里的方法置为静态的不需要创建实例,直接调用即可 * 总体来说,工厂模式适合:凡是出現了大量的产品需要创建并且具有共同的接口时,可以通过工厂方法模式进行创建 * 在以上的三种模式中,第一种如果传入的字符串有誤不能正确创建对象, * 第三种相对于第二种不需要实例化工厂类,所以大多数情况下,我们会选用第三种——静态工厂方法模式
* 笁厂方法模式有一个问题就是,类的创建依赖工厂类也就是说,如果想要拓展程序 * 必须对工厂类进行修改,这违背了闭包原则所以,从设计角度考虑有一定的问题,如何解决 * 就用到抽象工厂模式,创建多个工厂类这样一旦需要增加新的功能, * 直接增加新的工厂類就可以了不需要修改之前的代码。
抽象工厂 - 模式的好处就是如果你现在想增加一个功能如:发及时信息(新的消息类型)则只需做┅个实现类,实现Sender接口同时做一个工厂类,实现Provider接口就OK了,无需去改动现成的代码这样做,拓展性较好!