Java设计模式:工厂方法的使用示例
工厂方法(Factory Method)是一种创建型设计模式,它不直接创建对象,而是由一个共同的接口来创建具体的对象。
以下是一个简单的工厂方法使用示例,假设我们有一个Product
接口和两个具体的产品类ProductA
和ProductB
:
// 接口
public interface Product {
void operate();
}
// 具体产品类
class ProductA implements Product {
@Override
public void operate() {
System.out.println("Operating Product A");
}
}
class ProductB implements Product {
@Override
public void operate() {
System.out.println("Operating Product B");
}
}
// 工厂方法
public interface ProductFactory {
Product createProduct();
}
// 实现工厂方法的类,这里我们假设有一个`UniversalProductFactory`来创建通用产品
class UniversalProductFactory implements ProductFactory {
@Override
public Product createProduct() {
if (randomBoolean()) {
return new ProductA();
} else {
return new ProductB();
}
}
private boolean randomBoolean() {
return Math.random() > 0.5;
}
}
在这个例子中,UniversalProductFactory
是一个工厂方法,它不直接创建具体的ProductA
或ProductB
,而是通过一个随机决定来创建。这种方式使得在不需要特定产品的时候,也能动态地生成所需的产品。
还没有评论,来说两句吧...