内容目录
Java中的工厂模式是一种常见的设计模式,用于创建对象,使代码更具可维护性和可扩展性。下面是一个简单的Java工厂模式的实现示例:
首先定义一个抽象的产品接口:
public interface Product {
void use();
}
然后创建多个具体的产品类来实现这个接口:
public class ConcreteProductA implements Product {
@Override
public void use() {
System.out.println("使用具体产品A");
}
}
public class ConcreteProductB implements Product {
@Override
public void use() {
System.out.println("使用具体产品B");
}
}
接下来创建一个工厂接口:
public interface Factory {
Product createProduct();
}
然后创建具体的工厂类,实现工厂接口并返回具体的产品类:
public class ConcreteFactoryA implements Factory {
@Override
public Product createProduct() {
return new ConcreteProductA();
}
}
public class ConcreteFactoryB implements Factory {
@Override
public Product createProduct() {
return new ConcreteProductB();
}
}
最后,在客户端代码中使用工厂类来创建产品:
public class Client {
public static void main(String[] args) {
Factory factoryA = new ConcreteFactoryA();
Product productA = factoryA.createProduct();
productA.use();
Factory factoryB = new ConcreteFactoryB();
Product productB = factoryB.createProduct();
productB.use();
}
}
在上述示例中,工厂接口定义了一个创建产品的方法createProduct(),具体的工厂类实现了这个方法来创建具体的产品对象。在客户端代码中,我们可以通过工厂类来创建具体的产品对象,而无需关心具体的产品类实现。这样可以使代码更具有可维护性和可扩展性。