设计模式——简单工厂

简单工厂


什么是工厂?

集中产生产品、对外提供生产的产品的地方就是工厂。

1、产品接口

2、产品1类

3、产品2类

4、简单工厂

为什么要用这种模式

Human hm = HumanFactory.getHumanInstance(HumanType.MAN);

1、对于客户端来说,我们需要某个对象只是想使用它,我们无需来创建它。

2、将创建对象的方式集中管理,易于维护。

3、解耦。将使用对象跟创建对象分开,如果创建对象的逻辑有变动,不会影响到使用对象的逻辑

4、获取对象的方式可以更形象、具体。

缺点描述

如果增加产品类,需要改动获取产品实例的方法逻辑,需要增加相应的判断逻辑跟实例化逻辑。工厂方法还是需要改动。


秉承开闭原则——对增加开放,对修改关闭

改进工厂

工厂接口

改进后的工厂

测试

如此,就可以在增加新产品类型时,就只需要增加枚举实例,不需要改动工厂方法里的逻辑。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容