模式定义
简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。
模式结构
简单工厂模式包含如下角色:
Factory:工厂角色
Product:抽象产品角色
ConcreteProduct:具体产品角色
image.png
定义产品接口
public interface Product {
//声明类所需继承的共同接口,也可以是抽象类
}
产品的实现类A
public class ProductA implements Product {
public ProductA() {
System.out.println("ProductA");
}
}
产品的实现类B
public class ProductB implements Product {
public ProductB() {
System.out.println("ProductB");
}
}
工厂类
public class Factory {
//可以在工厂类中添加任何你所需要的逻辑
public static Product create(String str)
{
if(str.equalsIgnoreCase("ProductA")) //生成ProductA
{
return new ProductA();
}
else if(str.equalsIgnoreCase("ProductB")) //生成ProductB
{
return new ProductB();
}
return null;
}
}
调用
public class Client {
public static void main(String[] args) {
//调用Factory的静态方法生成所要的类
Factory.create("productA");
Factory.create("ProductB");
}
}
网友评论