`
animalfishyu
  • 浏览: 20697 次
  • 性别: Icon_minigender_1
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

设计模式之工厂模式(一)

阅读更多
  在设计模式中,工厂模式十分的常见    在设计模式中,工厂模式十分的常见,举个简单的例子,说明什么是工厂模式,假如我们需要修建一座房子出现 ,举个简单的例子,说明什么是工厂模式,假如我们需要修建一座房子需要砖块,如果我们够勤快,我们自己生产砖块,然后使用其修房子,但是想一想,我们真正的目的是修房子,而不是去生产砖块,所以,生产砖块,完全可以交给砖场去做,我们只需要去买砖,用砖就可以了,这就是工厂模式的现实原型
  工厂模式属于创建型模式,创建型模式有如下几类:
  简单工厂模式(Simple Factory)
  工厂模式(Factory)
  抽象工厂模式(Abstract Factory)
  单例模式(Singleton)
  原型模式(Prototype)
  创建者模式(Builder)
  在这一节主要讲解简单工厂模式,简单工厂的示例代码如下
 
  //抽象产品类
 
package com.wepull.simplefactory;

public interface Product {
	public void opera();
}


  //具体产品实现类
package com.wepull.simplefactory;
//具体产品类1
public class Product1 implements Product {

	public void opera() {
		// TODO Auto-generated method stub

	}

}


package com.wepull.simplefactory;
//具体产品类2
public class Product2 implements Product {

	public void opera() {
		// TODO Auto-generated method stub

	}

}

 
  //工厂类

 
package com.wepull.simplefactory;

public class SimpleFactory {
	// 根据参数不同创建不同的产品
	public static Product createProduct(String productName){
		if("1".equals(productName)){
			return new Product1();
		}else if("2".equals(productName)){
			return new Product2();
		}
		return null;
	}
}


简单的说,简单工厂模式设计比较简单,如果在代码中出现new对象的情况,就可以考虑使用简单工厂模式了

简单工厂模式的优点是:客户端不再负责new对象了,而是把生产的责任丢给了具体的工厂类,客户端只负责调用对象即可
简单工厂模式的缺点是:工厂类负责创建所有的对象,会导致产品的不断增多,代码量的庞大不利于维护,如果客户端对某些产品的创建方式有不同要求的话,就要不断的去修改工厂类,增加相应的逻辑判断
分享到:
评论

相关推荐

    java设计模式之工厂模式

    java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式java设计模式之工厂模式...

    设计模式之工厂方法模式

    工厂方法模式是设计模式中的创建型模式之一,它在软件工程中扮演着非常重要的角色,尤其是在C#这样的面向对象编程语言中。工厂方法模式提供了一种封装对象创建过程的方法,使得具体的创建过程延迟到子类中进行,从而...

    深入浅出设计模式之工厂模式

    根据提供的标题“深入浅出设计模式之工厂模式”与描述“将《Head First 设计模式》(中文版)按章节进行了分割,每章一个文件,方便大家下载”,我们可以推测出这部分内容主要关注的是设计模式中的工厂模式。...

    设计模式之工厂系列

    "设计模式之工厂系列"指的是几种不同的工厂模式,它们都是面向对象设计中的重要组成部分,尤其在Java编程语言中广泛使用。工厂模式的主要目标是提供一个创建对象的抽象接口,使得系统在不指定具体实现类的情况下,...

    设计模式资料之工厂设计模式

    在给定的“设计模式资料之工厂设计模式”中,我们主要关注的是工厂设计模式,这是一种创建型设计模式,它提供了创建对象的最佳方式。在这个资料中,可能会详细解释工厂模式的概念、目的以及如何在实际编程中应用。 ...

    设计模式之工厂

    "工厂模式"是其中一种常用的设计模式,它提供了一种创建对象的最佳方式。在这个主题下,我们将深入探讨三种主要的工厂模式:简单工厂、工厂方法和抽象工厂。 1. **简单工厂模式**: 简单工厂模式是最基础的形式,...

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

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

    设计模式单例模式和工厂模式综合应用

    **工厂模式**是一种创建型设计模式,它提供了一种创建对象的最佳方式。在工厂模式中,当客户端请求创建一个产品时,工厂类会负责创建这个产品。这样做的好处是隐藏了对象创建的复杂性,客户端只需要知道如何获取产品...

    设计模式之禅之 工厂方法模式+策略模式

    《设计模式之禅》第35章介绍了工厂方法模式与策略模式的结合运用,旨在通过一个具体的案例——“一卡通”交易系统的设计,来展现如何在实际项目中灵活运用这两种设计模式,以达到代码的可扩展性和易维护性。...

    设计模式之单例模式和工厂模式

    细心整合和单例模式和工厂模式的几种模型,懒汉式,饿汉式,如何并发操作模式,等都有详细讲解

    c++设计模式-工厂方法模式

    工厂方法模式是面向对象设计模式中的一个创建型模式,它提供了一种封装对象创建过程的方式,使得具体的对象创建过程可以延迟到子类中进行。在C++编程中,工厂方法模式广泛应用于各种软件设计中,因为它能有效地解耦...

    菜鸟教程设计模式之工厂模式代码整理

    在这个"菜鸟教程设计模式之工厂模式代码整理"中,我们将深入探讨工厂模式的基本概念、结构以及如何在实际编程中应用。 工厂模式的核心思想是通过一个专门的工厂类来创建对象,而不是让客户端代码直接实例化具体的...

    设计模式之工厂方法、简单工厂、抽象工厂

    这三种工厂模式的共同之处在于它们都为对象的创建提供了抽象层,隐藏了具体的实例化过程。然而,它们之间的区别在于灵活性和抽象程度: - 工厂方法模式提供了一种定义抽象接口的方法,让子类来决定具体实例化哪个类...

    [创建型模式] head first 设计模式之工厂模式(Factory)

    工厂方法(Factory Method)是工厂模式的一种具体实现,它是《Head First 设计模式》这本书中讲解的重点之一。在这个模式中,一个工厂类声明了一个创建对象的抽象方法,但并不实现这个方法。而是由子类决定要实例化...

    设计模式之工厂模式Java实现和类设计图

    工厂模式作为其中的一种,是对象创建型模式,它的主要目的是为了隔离对象创建过程与客户端之间的关系,使得创建过程更加灵活,同时也隐藏了具体的创建过程。本篇将深入探讨工厂模式在Java中的实现以及类设计图的应用...

    工厂设计模式代码

    工厂设计模式是软件工程中广泛使用的一种创建型设计模式,它的主要目的是为了隔离对象的创建过程,使得客户端代码不直接创建对象,而是通过一个专门的工厂类来负责对象的实例化。这种模式使得系统在面对产品扩展时...

    设计模式——工厂方法模式

    工厂方法模式是面向对象设计模式中的一种,它属于创建型模式,主要解决的是当系统需要创建的对象具有多种类型,而具体创建哪种类型的对象在运行时才能确定的问题。在这个压缩包中,`FactoryMethod`可能包含了Java...

    设计模式_工厂模式

    设计模式是软件工程中的一种最佳实践,用于解决常见的设计问题并提供可重用的解决方案。在这些模式中,工厂模式是一种创建型模式,它提供了一种封装对象创建过程的方法,使得客户端代码无需直接实例化对象,而是通过...

    设计模式之蝉

    还有“工厂模式”(Factory pattern),它是创建型设计模式之一,用于创建对象而不暴露创建逻辑给客户端,并且通过使用一个共同的接口来指向新创建的对象。这种模式在创建对象时提供了更高的灵活性和可扩展性。在...

    设计模式之java工厂模式

    "设计模式之java工厂模式"是关于如何优雅地创建对象的一种经典设计模式,它属于创建者模式类别。创建者模式主要关注对象的创建,而工厂模式则在其中扮演着重要角色,因为它提供了一种抽象的方式来创建对象,从而使...

Global site tag (gtag.js) - Google Analytics