简单工厂模式是一种常用的软件设计模式,它定义了一个创建对象的接口,但是由子类决定要实例化的类是哪一个。这样做的目的是将类的实例化推迟到子类中进行。
实现简单工厂模式的步骤如下:
定义一个抽象类或接口,该抽象类或接口定义了创建对象的操作。
定义多个具体的类来实现抽象类或接口,每个具体类都可以创建一个具体的对象。
定义一个工厂类,该工厂类具有一个静态方法,该方法接收一个参数,并根据参数的不同返回不同的具体对象。
在客户端代码中,调用工厂类的静态方法来创建对象。
示例代码如下:
``` // 定义抽象类或接口 public interface Product { void method(); }
// 定义具体的类 public class ConcreteProductA implements Product { @Override public void method() { System.out.println("I am ConcreteProductA."); } }
public class ConcreteProductB implements Product { @Override public void method() { System.out.println("I am ConcreteProductB."); } }
// 定义工厂类 public class Factory { public static Product createProduct(String type) { if ("A".equals(type)) { return new ConcreteProductA(); } else if ("B".equals(type)) { return new ConcreteProductB(); } else { return null; } } }
// 客户端代码 public class Client {