工厂模式分类:
简单工厂模式(静态工厂模式)
工厂方法模式
抽象工厂模式
以生产冰淇淋为列子
简单工厂模式
三种口味的冰淇淋用一台机器生产,工厂类需要来做逻辑判断生产哪一种
定义一个冰淇淋接口,一个抽象的口味方法,让苹果口味,香蕉口味和橙汁口味的三个类实现这个接口重写里面的口味方法,定义一个工厂类,在里面有一个方法来生产不同口味的冰淇淋。
缺点,如果在多一种口味的,就需要把机器里面添加逻辑还有在创建一个类来实现冰淇淋接口,很麻烦。
工厂方法模式
每种口味的冰淇淋分配一台机器,定义一个冰淇淋接口,一个抽象的口味方法,让苹果口味,香蕉口味和橙汁口味的三个类实现这个接口重写里面的口味方法,定义一个工厂接口,一个抽象的生产方法,让三种不同口味的工厂实现这个接口重写里面的生产方法。在客服端就可以根据自己的需求来创建工厂,生产想要的冰淇淋
它是将逻辑的判断交给了用户,扩展起来很容易
抽象工厂模式
冰淇淋不仅有口味不同还有大小不同,肯定不会在添加机器来解决大小的问题,因为生产过程是一样的,所以可以在生产苹果的工厂机器上加一个按钮(两个按键)
定义大冰淇淋接口,小冰淇淋接口,里面有个抽象的口味方法,让不同口味的来实现大小接口,重写里面的口味方法,分为大小分,再定义一个工厂接口,里面两个抽象方法,生产大小冰淇淋,让三个工厂实现工厂接口,重写里面生产大小的冰淇淋,完毕
可以参考https://blog.csdn.net/weixin_35985385/article/details/81430545
工厂模式
最新推荐文章于 2024-04-13 16:38:06 发布