1、什么是工厂模式
简单工厂模式是属于类的创建型模式,又叫静态工厂方法模式。通过专门定义一个类来负责创建其他类的实例,被创建的实例通常具有相同的父类。
2、模式中包含的角色及其职责
1)工厂角色:简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。
2)抽象角色:简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共有的公共接口。
3)具体产品角色:简单工厂模式所创建的具体实例对象。
3、简单工厂模式的实现
4、简单工厂模式的优点
1)一个使用者想创建一个对象,只要知道其名称就可以了。
2)扩展性高,如果想要增加一个产品,只有扩展一个工厂类就可以了。
3)屏蔽产品的具体实现,调用者只关心产品的接口。
5、缺点
每次增加一个产品时,都需要增加一个具体类和对象实现工厂,使得系统中的类的个数成倍增加,在一定程度上增加了系统的复杂度,同时也增加了系统具体类的依赖。
6、具体实例
1)Shape.java类
2)Circle.java类
3)Rectangle.java类
4)Square.java类
5)ShapeFactory.java类
6)SimpleFactory.java