工厂模式属于创建型模式,由一个工厂对象决定创建出哪一种产品类的实例。
角色:
IProduct: 产品共同的接口
Product1:具体的产品类
Creator:工厂类,可根据参数决定创建的产品类型
示例:
public interface IProduct { void myfunction(); }
---
class Product1 implements IProduct{ public void myfunction(){ System.out.println("function1"); } }
---
class Product2 implements IProduct { public void myfunction() { System.out.println("function2"); } }
---
public class Factory{ public static IProduct product(int k){ if (k == 1) { return new Product1(); } else if (k == 2) { return new Product2(); } return null; } }
---
public class FactoryTest{ public static void main(String[] args){ IProduct product = Factory.product(2); if (product != null) { product.myfunction(); } } }
end