工厂方法模式(FACTORYMETHOD)是一种常用的类创建型设计模式,此模式的核心精神是封装类中变化的部分,提取其中个性化善变的部分为独立类,通过依赖注入以达到解耦、复用和方便后期维护拓展的目的。它的核心结构有四个角色,分别是抽象工厂;具体工厂;抽象产品;具体产品。
举一反三
- 以下关于工厂方法模式和抽象工厂模式的描述中,不正确的是( )。 A: 工厂方法模式针对的是一个产品等级结构,抽象工厂模式针对的是面向多个产品等级结构 B: 一个抽象工厂类均可以派生出多个具体工厂类 C: 工厂方法模式中的每个具体工厂类可以创建多个具体产品类的实例 D: 工厂方法模式中只有一个抽象产品类,抽象工厂模式中多个抽象产品类
- 下面关于工厂方法模式说法错误的是( )。 A: 工厂方法模式使一个类是实例化延迟到其子类中 B: 工厂方法模式中具有抽象工厂、具体工厂、抽象产品和具体产品4个角色 C: 工厂方法模式可以处理多个产品的多个等级结构 D: 工厂方法模式可以屏蔽产品类
- 关于工厂模式的陈述,以下有误的一项是( )。 A: 工厂模式隔离产品的创建和使用 B: 在工厂类中封装产品对象的创建细节,客户类无须关心这些细节 C: 工厂方法模式中的工厂方法可以改为静态方法 D: 工厂方法模式中抽象工厂声明的工厂方法返回抽象产品类型,不能返回具体产品类型
- 工厂方法模式的主要角色有:抽象工厂(Abstract Factory) 、 具体工厂(Concrete Factory) 、抽象产品(Product)和具体产品(Concrete Product)。
- 以下关于工厂方法模式的叙述错误的是() A: 在工厂方法模式中引入了抽象工厂类,而具体产品的创建延迟到具体工厂中实现 B: 工厂方法模式添加新的产品对象很容易,无须对原有系统进行修改,符合开闭原则 C: 工厂方法模式存在的问题是在添加新产品时,需要编写新的具体产品类,而且还要提供与之对应的具体工厂类,随着类个数的增加,会给系统带来一些额外开销 D: 工厂方法模式是所有形式的工厂模式最为抽象和最具一般性的一种形态,工厂方法模式退化后可以演变成抽象工厂模式