分类: Java
2011-11-16 10:13:52
工厂模式:
简单工厂模式的进一步抽象和推广。
在工厂方法模式中,核心的工厂类不再负责所有的产品的创建,而是将具体创建的工作交给之类做,也就是成为一个抽象工厂角色,仅仅负责给出具体工厂子类必须实现的接口。
工厂模式涉及角色:
抽象工厂,具体工厂,抽象产品,具体产品.
抽象工厂:
担任这个角色是工厂方法模式的核心,它是与应用程序无关的,任何在模式中创建对象的工厂类必须实现这个接口。
这个角色使用抽象java 类实现。
具体工厂:
担任这个角色是实现了抽象工厂接口的具体java类,具体工厂角色含有与应用密切相关的逻辑,并且受到应用程序的调用以创建产品对象。
抽象产品:
工厂方法模式所创建对象的超类型,也就是产品对象的共同父类或共同拥有的接口。
具体产品:
这个角色实现了抽象产品角色所声明的接口,工厂方法模式所创建的每一个对象都是某个具体产品角色的实例。
优缺点:
保留了简单工厂模式的优点,克服其缺点。