1.简要说明
定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method 使一个类的实例化延迟到其子类。
2.代码实现
public class FactoryMethod {
public static void main(String[] args) {
Factory factoryA = new FactoryA();
Product productA = factoryA.createProduct();
productA.show();
}
}
interface Factory {
Product createProduct();
}
class FactoryA implements Factory {
@Override
public Product createProduct() {
return new ProductA();
}
}
class FactoryB implements Factory {
@Override
public Product createProduct() {
return new ProductB();
}
}
interface Product {
void show();
}
class ProductA implements Product {
@Override
public void show() {
System.out.println("ProductA");
}
}
class ProductB implements Product {
@Override
public void show() {
System.out.println("ProductB");
}
}