工厂模式是用来创建对象的设计模式。
简单工厂模式专门定义一个工厂类来负责创建其它类的实例。这个工厂类能够管理这些对象,能够知道创建了多少这样的对象。简单工厂模式是工厂模式中最简单的一种。
简单工厂模式的实质是,根据工厂类中静态方法的传入参数创建产品类实例,并且这些产品类都继承自一个抽象类或接口。该模式中包含的角色:
(1)Factory(工厂)角色
工厂类是简单工厂模式的核心,,它包含了必要的判断逻辑,根据外界给定的信息,决定应该创建哪个具体类的对象。工厂类可以被外界调用,创建所需的产品对象。
(2)Product(抽象产品)角色
简单工厂模式创建的所有对象的父类,负责描述所有实例的所有公共接口。
(3)ConcreteProduct(具体产品)角色
是简单工厂模式的创建目标。所有的创建对象都是这个角色的某个具体类的实例。抽象产品的子类实现了抽象产品类中定义的所有抽象方法。
1 | //抽象产品类 |
1 | //具体产品类 |
1 | //工厂类 |
1 | //测试类 |