Api: 定义客户所需要的功能接口

Impl: 具体实现Api的实现类,可能会有多个

Factory: 工厂,选择合适的实现类来创建Api接口对象

Client: 客户端,通过Factory 来获取Api接口对象,然后面向Api接口编程

作用

帮忙创建对象(核心方法可以使用静态方法,称之为静态工厂)。

适用场景

当不知道创建什么对象的时候去使用

创建对象过于复杂的时候去使用。

优点

简单工厂是工厂模式中创建对象最简单的方式,通俗容易理解。

缺点

当要生产对象的模块发生了需求变更,此时要被实例化的类可能会增加或者减少,此时就需要改工厂模式的核心代码,违背了开闭原则。

推荐内容