欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > > 文章正文

工厂模式-创建型模式,

来源: javaer 分享于  点击 3945 次 点评:185

工厂模式-创建型模式,


作者:小村长

工厂方法模式(Factory Method Pattern):定义一个用于创建对象的接口,让子类决定将哪一个类实例化。工厂方法模式让一个类的实例化延迟到其子类。

结构图:

UML-示例图

示例:

public interface Factory {
    public Product factoryMethod();
}
public class ConcreteFactory implements Factory {
    public Product factoryMethod() {
        return new ConcreteProduct();
    }
}
public abstract class Product {
  public abstract void method();
}
public class ConcreteProduct extends Product {
	@Override
	public void method() {
	}
}

应用场景

  1. 用户不需要关心复杂对象的创建过程
  2. 需要创建过程和使用过程很好的解耦

优点:

  1. 工厂方法用来创建客户所需要的对象时,隐藏了实现细节
  2. 当加入新的对象中,无需修改原有代码,完全符合开闭原则

缺点:

  1. 当加入新的对象时,需要写新的工厂方法,即使是很简单的对象,这无疑增加了软件的复杂度

用户点评