首先,新建产品接口
public interface IProduct {
void product();
}
然后,创建产品的实现类
public class ProductA implements IProduct {
public void product() {
System.out.println("create product A finish");
}
}
public class ProductB implements IProduct {
public void product() {
System.out.println("create productB finish");
}
}
接着,新建工厂接口
public interface IFactory {
IProduct create();
}
and then,创建对应产品的工厂类
public class ProductAFactory implements IFactory {
public IProduct create() {
return new ProductA();
}
}
public class ProductBFactory implements IFactory {
public IProduct create() {
return new ProductB();
}
}
最后就可以根据工厂类创建对应的产品了
public class FactoryMethodTest {
public static void main(String[] args) {
IFactory factory=new ProductAFactory();
IProduct product=factory.create();
product.product();
}
}