Java工厂模式的使用步骤如下:
- 定义一个接口或抽象类,用来表示工厂所创建的对象的类型。这个接口或抽象类可以包含一个或多个抽象的工厂方法。
public interface Product { void doSomething(); }
- 创建具体的产品类,实现工厂接口或继承工厂抽象类。这些具体的产品类实现了接口或抽象类中定义的抽象工厂方法,并提供具体的实现。
public class ConcreteProduct implements Product { @Override public void doSomething() { System.out.println("Do something in ConcreteProduct"); } }
- 创建工厂类,实现一个工厂接口或继承一个工厂抽象类。工厂类负责实现工厂方法,用来创建具体的产品对象。
public class ConcreteFactory implements Factory { @Override public Product createProduct() { return new ConcreteProduct(); } }
- 在客户端代码中使用工厂类创建产品对象。通过工厂类的工厂方法,可以创建具体的产品对象,而无需知道具体产品类的实现细节。
public class Client { public static void main(String[] args) { Factory factory = new ConcreteFactory(); Product product = factory.createProduct(); product.doSomething(); } }
通过这样的方式,工厂模式将创建具体对象的逻辑封装在工厂类中,客户端只需要通过工厂类来创建产品对象,而无需直接依赖具体的产品类。这样可以提高代码的灵活性和可维护性,将对象的创建和使用解耦。