`

设计模式之抽象工厂模式

阅读更多

抽象工厂模式

       工厂方法模式有一个问题就是,类的创建依赖工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则,所以,从设计角度考虑,有一定的问题,如何解决?就用到抽象工厂模式,创建多个工厂类,这样一旦需要增加新的功能,直接增加新的工厂类就可以了,不需要修改之前的代码。附件中的类图说明了抽象工厂模式各部分之间的关系。示例代码如下:

       

public class ProductFactory {
	public static Product createProduct(){
	   return new Productor();
    }
	
	public static Product createConsume(){
		return new Consumer();
	}
}

   

import com.zh.simple.factory.pattern.Product;
import com.zh.simple.factory.pattern.Productor;

public class ProductFactoryImpl implements ProductFactory {

	@Override
	public Product create() {
		return new Productor();
	}
}

 

import com.zh.simple.factory.pattern.Consumer;
import com.zh.simple.factory.pattern.Product;

public class ConsumeFactoryImpl implements ProductFactory {

	@Override
	public Product create() {
		return new Consumer();
	}
}

 

public class AbstractFactoryMain {
   public static void main(String[] args){
	   ProductFactory productFactory = new ConsumeFactoryImpl();
	   productFactory.create().product();
   }
}

 

总结

       抽象工厂模式的好处是,如果想增加一个功能则只需做一个实现类,实现对应的功能接口,同时做一个工厂类实现对应的工厂接口就可以了,无需去改动现成的代码。这样做,拓展性较好!

  • 大小: 8.7 KB
分享到:
评论

相关推荐

    NET设计模式之抽象工厂模式[归纳].pdf

    抽象工厂模式是设计模式中的一种,属于创建型模式,它的主要目的是为了解决在软件系统中,面对一系列相互依赖的对象的创建问题。这种模式提供了一个创建一系列相关或相互依赖对象的接口,而不必指定它们的具体类。...

    JAVA设计模式之抽象工厂模式

    抽象工厂模式是设计模式中的一种创建型模式,它提供了一种创建对象集合的接口,而无需指定具体类。这种模式允许客户端使用一个通用接口来创建一组相关或相互依赖的对象,而无需了解它们的具体实现。在Java中,抽象...

    Java设计模式之抽象工厂模式

    总结来说,Java设计模式之抽象工厂模式是一种用来创建一系列相关对象的设计模式,它通过提供抽象工厂接口来隔离具体产品的创建,使系统具备更好的扩展性和封装性。在实际开发中,我们可以根据需求选择使用抽象工厂...

    Java设计模式之抽象工厂模式.zip

    通过阅读《Java设计模式之抽象工厂模式.pdf》这份文档,你可以更深入地理解抽象工厂模式的原理、实现方式以及如何在Java项目中应用这一模式。文档中可能涵盖了模式的优缺点、实例分析、与其他设计模式的比较等内容,...

    java设计模式之抽象工厂模式

    java设计模式之抽象工厂模式实例,希望对大家有所帮助。

    23种设计模式之抽象工厂模式Java示例代码

    ### 23种设计模式之抽象工厂模式Java示例代码详解 #### 概述 抽象工厂模式(Abstract Factory Pattern)是面向对象设计模式中的一个重要成员,属于创建型模式的一种。它提供了一种创建一系列相关或相互依赖对象的...

    23钟设计模式之抽象工厂模式

    23种设计模式之抽象工厂模式对抽象工厂模式进行了简单的介绍,并附带了例子程序,和大家分享

    Java编程23种设计模式之抽象工厂模式

    **Java编程23种设计模式之抽象工厂模式** 在软件工程中,设计模式是一种解决常见问题的经验总结,其中抽象工厂模式是一种创建型设计模式。它提供了一种创建对象族的接口,而无需指定它们的具体类。这个模式尤其适用...

    设计模式之抽象工厂模式-c++

    抽象工厂模式(Abstract Factory Pattern)是一种创建型设计模式,提供一个接口用于创建一系列相关或相互依赖的对象,而无需指定它们的具体类。这种模式常用于需要跨多个产品系列进行实例化的场景。 抽象工厂模式的...

    JAVA设计模式之抽象工厂模式案例

    抽象工厂模式是软件设计模式中的一种,属于创建型模式,它提供了一种创建对象组族的接口,而无需指定其具体类。这种模式的关键在于抽象工厂,它定义了一组产品对象的接口,并且允许子类根据不同的实现来生产一系列...

    Java设计模式之抽象工厂模式.docx

    抽象工厂模式是设计模式中的一种,属于创建型模式,它为创建一组相关或相互依赖的对象提供了一个统一的接口,使得客户端无需关注这些对象的具体实现细节,仅需与抽象工厂交互即可。这种模式遵循开放封闭原则(OCP)...

    c# 设计模式之抽象工厂模式

    抽象工厂模式是设计模式中的一种创建型模式,它提供了一种创建对象集合的接口,而无需指定具体的类。在C#编程中,这种模式经常被用来处理不同平台或环境下的对象创建问题,使得代码能够更好地适应变化,提高系统的...

    Java设计模式之抽象工厂模式.pdf

    抽象工厂模式是设计模式中的创建型模式,它为创建一系列相关或相互依赖的对象提供了一个统一的接口,使得客户端在使用这些对象时,无需关注它们的具体实现细节。这种模式的核心在于,它将对象的创建与使用分离,增强...

    Java23种设计模式06抽象工厂模式.pdf

    ### Java23种设计模式之抽象工厂模式 #### 模式动机 在探索设计模式的领域里,**抽象工厂模式**是一种重要的模式,它解决了一个关键问题:如何在一个系统中创建一系列相关或相互依赖的对象,而无需指定这些对象的...

    [创建型模式] 设计模式之抽象工厂模式(Abstract Factory Pattern)

    抽象工厂模式是设计模式中的一种创建型模式,它提供了一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。这种模式的关键在于抽象工厂,它定义了一组创建对象的接口,允许子类决定实例化哪一个类。...

Global site tag (gtag.js) - Google Analytics