10.7
1.工厂模式
下面是一个简单的Java代码示例,展示了工厂模型的实现:
// 产品接口
interface Product {
void doSomething();
}
// 具体产品类A
class ConcreteProductA implements Product {
@Override
public void doSomething() {
System.out.println("ConcreteProductA do something");
}
}
// 具体产品类B
class ConcreteProductB implements Product {
@Override
public void doSomething() {
System.out.println("ConcreteProductB do something");
}
}
// 工厂接口
interface Factory {
Product createProduct();
}
// 具体工厂类A
class ConcreteFactoryA implements Factory {
@Override
public Product createProduct() {
return new ConcreteProductA();
}
}
// 具体工厂类B
class ConcreteFactoryB implements Factory {
@Override
public Product createProduct() {
return new ConcreteProductB();
}
}
// 客户端代码
public class FactoryPatternExample {
public static void main(String[] args) {
// 创建工厂对象
Factory factoryA = new ConcreteFactoryA();
Factory factoryB = new ConcreteFactoryB();
// 使用工厂对象创建产品对象
Product productA = factoryA.createProduct();
Product productB = factoryB.createProduct();
// 调用产品对象的方法
productA.doSomething();
productB.doSomething();
}
}
在上面的示例中,我们首先确定了一个产品接口Product,它包含一个doSomething()方法,用于执行产品的操作。
然后,我们发现了两个具体产品类型ConcreteProductA和ConcreteProductB,它们分别发现了产品接口中的方法。
接着,我们确定了工厂接口Factory,它包含一个createProduct()方法,用于创建产品对像。
我们还发现了两个实体工厂类ConcreteFactoryA和ConcreteFactoryB,他们分别发现了工厂接口中的方法,根据需要创建不同的产品对比。
最后,在客户端代码中,我们创建了工厂对像,并使用工厂对像分别创建了实体的产品对像。通过工厂的创建方法,我们可以轻松地获取产品对像,并调整使用其他方法进行操作。
工厂模型的关键思想是将对象的创建与使用分离,通过使用工厂来统统管理对象的创建过程,从而实践更好的精神生活和可维护性。工厂模式可以隐藏对象的创建细节,使客户终端代码只关注使用对象而不需要关注对象的创建过程。

浙公网安备 33010602011771号