1,什么是工厂设计模式?
创建一个创建实例化类的一个接口,让子类去决定实例化哪一个类.与简单工厂方法相比,它让类的实例化延续到了子类.
2,为什么要使用工厂设计模式?
简单工厂设计模式之前已经介绍过了,工厂模式是与简单工厂模式类似,但是也有区别.简单工厂模式是由一个简单工厂类直接产生产品对象,而工厂模式则是抽象出一个工厂接口,然后每个产品都有一个该产品的产品工厂继承自它.那么它和简单工厂有什么区别呢,什么时候我们用简单工厂,什么时候用工厂呢?
我们看UML比较2种模式的区别
这是简单工厂
接下来是工厂模式
看完这两个图区别就一目了然了,我们如果需要添加一种燃烧弹类型的子弹,并完成子弹生产过程.如果用简单工厂去添加需要添加燃烧弹.class然后修改简单工厂.class,这里就违背了设计模式的开放-封闭原则,那么用工厂模式就符合开放封闭原则,它添加燃烧弹.class然后在添加一个燃烧弹工厂继承自工厂接口.按照这种情况看来,在产品类型变化情况少的情况下我们就用简单工厂模式,如果产品类型变化多那么就得用工厂设计模式.
3,怎么使用工厂设计模式
这个用法并不复杂,UML类图已经很清晰的展示.所以这里不再赘述.