工厂模式-创建型模式

作者:小村长

工厂方法模式(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. 当加入新的对象时,需要写新的工厂方法,即使是很简单的对象,这无疑增加了软件的复杂度

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: 工厂模式-创建型模式

  • Trackback 关闭
  • 评论 (1)
    • didibibi
    • 2020/05/11 9:13下午

    利用反射也是解耦的好办法。

return top