简单工厂模式
又称静态工厂方法模式,它属于类创建型模式.在简单工厂模式中,可以根据参数的不同返回不同类的实例.简单工厂模式专门定义一个类来负责创建其他类的实例,被创建实例通常都有共同的父类
简单工厂模式中的角色
- 抽象产品类:可以理解为产品的模板,也就是产品所继承的抽象父类,各产品所属的同一大类
- 产品子类 :所需要创建的具体产品类
- 工厂类: 传入参数到工厂类获取产品,根据参数类的不同返回不同类的实例
下面举个例子
//工厂类
class simpleFacytory{
public static void main(String[] args) {
Product product = simpleFacytory.getProduct("A");
product.create();
}
public static Product getProduct(String type){
//根据参数获取不同类的实例
if(type.equals("A"))
return new ProductA();
else
return new ProductB();
}
}
//抽象产品类
abstract class Product{
abstract public void create();
}
//产品子类A
class ProductA extends Product{
@Override
public void create() {
System.out.println("创建了产品A");
}
}
//产品子类B
class ProductB extends Product{
@Override
public void create() {
System.out.println("创建了产品B");
}
}
优点:
对象的创建和使用实现分离,各司其职
缺点:
简单工厂模式不够灵活,新增一个产品就要增加产品类,修改判断逻辑等
本文详细介绍了简单工厂模式,包括其角色、实现方式和优缺点。通过实例演示如何在Java中创建不同产品类的实例,突出对象创建与使用的分离。
1567

被折叠的 条评论
为什么被折叠?



