简单分享下java中设计模式–工厂模式
工厂模式(Factory Pattern)是面向对象编程中常用的设计模式之一,它属于创建型模式。工厂模式的主要目的是使用工厂方法来创建对象,而不是直接使用 new 关键字实例化对象。这样可以提高程序的扩展性和维护性。
以下是Java中简单工厂模式的案例代码:
首先,我们定义一个产品接口和几个具体产品类:
// 产品接口
interface Product {
void use();
}
// 具体产品类A
class ConcreteProductA implements Product {
public void use() {
System.out.println("Using ConcreteProductA");
}`在这里插入代码片`
}
// 具体产品类B
class ConcreteProductB implements Product {
public void use() {
System.out.println("Using ConcreteProductB");
}
}
然后,我们创建一个工厂类,用于生成具体的产品实例:
```java
```java
// 工厂类
class ProductFactory {
// 工厂方法,根据传入的参数决定生成哪种产品实例
public Product createProduct(String choice) {
if (choice == null) {
return null;
}
if (choice.equalsIgnoreCase("A")) {
return new ConcreteProductA();
} else if (choice.equalsIgnoreCase("B")) {
return new ConcreteProductB();
}
return null;
}
}
最后,我们使用工厂类来创建对象,并使用这些对象:
```java
public class FactoryPatternDemo {
public static void main(String[] args) {
// 创建工厂对象
ProductFactory factory = new ProductFactory();
// 使用工厂对象创建产品A
Product productA = factory.createProduct("A");
productA.use();
// 使用工厂对象创建产品B
Product productB = factory.createProduct("B");
productB.use();
}
}
在这个例子中,Product是一个接口,ConcreteProductA和ConcreteProductB是实现了Product接口的具体产品类。ProductFactory是一个工厂类,它包含一个createProduct方法,根据传入的参数来决定创建哪种产品实例。在FactoryPatternDemo的main方法中,我们创建了一个ProductFactory对象,并使用它来创建ConcreteProductA和ConcreteProductB的实例,然后调用它们的use方法。
工厂模式隐藏了对象创建的复杂性,使得在不知道具体实现的情况下也能创建和使用对象。这有助于降低客户代码与具体产品代码之间的耦合度。``
完结,撒花!求赞求关注! 有问题可威:c_-j_-c
标签:ConcreteProductB,Product,ConcreteProductA,java,创建,use,工厂,设计模式 From: https://blog.csdn.net/QQ903275718/article/details/143508323