简单工厂设计模式,又称静态工厂方法。他本不属于23种设计模式中,但由于应用比较广泛,所以回顾一下:
要点:
专门定义一个类来创建其他类的实例,被创建的实例通常会有共同的父类及接口,通常根据一个参数来实例化不同的类.
实例:
举个例子:你去专门卖鞋子的商店(专门的类去创建实例)去买鞋子。你对服务员说:“我要一双nike的鞋子(传递了一个参数nike)”,服
务员这时去拿了一双nike的鞋子(返回实例化的对象)给你,你试穿以后很满意的付款拿走了。
如下图:
这里的商场就是你要买鞋的地方,而nike和adidas分别是两个生产厂商,他们共同继承了一个product的类。因为大部分鞋子的原材都是从一
个地方进的。
代码:
这就是一个简单工厂的例子,真的很简单。
优点:
能根据需求去决定该实例化哪个类,也就是说用哪个实例化哪个
明确区分了各自的职责和权力,有利于整个软件体系结构的优化
缺点:
创建类必须是实现考虑到的,如果要添加新类,就要改变工厂类,比较麻烦(当然,在接下来的文章中我会分析另一种设计模式来弥补这个不
足)
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛