2工厂方法模式<代码/DesignPattern20140912/src/FactoryMethod>
意图:定义一个创建产品对象的工厂接口,将实际创建工作推迟到工厂子类中,工厂方法模式可以容许多个实的工厂类,以每一个工厂类负责每一个产品类等级.系统有多个产品类等级可以描述所有已有的产品类;
定义图:
平行等级结构,工厂 <==> 产品
应用实例图:
参与者:
抽象产品(Product是工厂方法模式所创立的对象的父类,或它们共同拥有的接口)
具体产品(ConcreteProduct,实现Product接口)
抽象工厂(Creator:1声明工厂方法,该方法返回一个Product类型的对象。Creator也可以定义一个工厂方法的缺省实现,返回一个缺省的ConcreteProduct对象 2 可以调用工厂方法以创建一个Produc对象)
具体工厂类 (ConreteCreator:重定义工厂方法以返回一个ConcreteProduc对象)
注:
1 参考书籍:Java与模式
2 参考:http://lavasoft.blog.51cto.com/62575/11458/