`
newleague
  • 浏览: 1493241 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

Java设计模式之简单工厂模式(2)

阅读更多
一、概述  
简单工厂模式
(Simple Factory),又称静态工厂方法模式,是类的创建模式。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类
详细说明如下:
   
一个具体工厂通过条件语句创建多个产品,产品的创建逻辑集中与一个工厂类。
    客户端通过传不同的参数给工厂,实现创建不同产品的目的
    增加新产品时,需要修改工厂类、增加产品类,不符合OCP原则

二、具体代码
Java代码 复制代码
  1. //生产产品的工厂类   
  2. public class ProductFactory{   
  3.   public static Product generateProduct(int which){ //这个方法是static的   
  4.   if (which==1)   
  5.     return new ProductA();   
  6.   else if (which==2)   
  7.     return new ProductB();   
  8.   }   
  9. }   
  10.   
  11. //抽象产品   
  12. public interface Product {   
  13.      .....   
  14. }   
  15.   
  16. //具体产品A   
  17. public ProductA implement Product {   
  18.      ProductA () {}   
  19. }   
  20.   
  21. //具体产品B   
  22. public ProductB implement Product {   
  23.      ProductB () {}   
  24. }   
  25.   
  26. //调用工厂方法   
  27. public Client {   
  28.      public method1() {   
  29.          ProductFactory.generateProduct(1);   
  30.      }   
  31. }  
//生产产品的工厂类
public class ProductFactory{
  public static Product generateProduct(int which){ //这个方法是static的
  if (which==1)
    return new ProductA();
  else if (which==2)
    return new ProductB();
  }
}

//抽象产品
public interface Product {
     .....
}

//具体产品A
public ProductA implement Product {
     ProductA () {}
}

//具体产品B
public ProductB implement Product {
     ProductB () {}
}

//调用工厂方法
public Client {
     public method1() {
         ProductFactory.generateProduct(1);
     }
}

 
Java代码 复制代码
  1. interface a{}   
  2.   
  3. class b implements a{};   
  4.   
  5. class c implements a{};   
  6.   
  7. //工厂类   
  8. public class factory{   
  9.      public static a createa(string name){   
  10.          class cls=class.forname(name);   
  11.          object obj=cls.getinstance();   
  12.          return (a)obj;   
  13.      }   
  14. }   
  15. //创建实例时   
  16. a b=factory.createa("b");   
  17. a  c=factory.createa("c"); 
分享到:
评论

相关推荐

    java设计模式之工厂模式

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

    设计模式之java工厂模式

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

    java工厂设计模式之简单工厂

    **Java工厂设计模式之简单工厂** 简单工厂设计模式是一种创建型设计模式,它提供一个创建对象的静态方法,客户端可以通过这个静态方法获取所需的具体产品,而无需了解这些产品的具体实现。这种模式的主要目的是将...

    Java设计模式-简单工厂

    **Java设计模式——简单工厂** 简单工厂模式是软件设计模式中的一种基础模式,它属于创建型设计模式。在Java编程中,我们常常会遇到需要创建一系列相关或相互依赖的对象,而这些对象的创建过程可能会非常复杂。这时...

    java 设计模式 mvc模式 单例模式 代理 工厂 简单工厂

    在Java中,简单工厂、工厂方法和抽象工厂是三种不同的工厂模式实现。 5. **简单工厂模式**:是最简单的工厂模式形式,它包含一个工厂类,根据传入的参数决定返回哪种类型的实例。虽然易于理解,但不易扩展,因为...

    java设计模式-简单工厂模式示例

    简单工厂模式是面向对象设计中的一种经典设计模式,它属于创建型模式,主要用来解决对象的创建问题。在Java编程中,简单工厂模式通过一个中心工厂类来负责创建相关的对象,而无需让客户端代码直接new具体的产品类。...

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

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

    java设计模式之简单工厂.zip

    在这个"java设计模式之简单工厂.zip"压缩包中,包含了两个视频文件,分别以“5.理解简单工厂.avi”和“4.初识和体会简单工厂.avi”命名,它们旨在帮助我们深入理解和掌握Java中的简单工厂设计模式。 简单工厂模式是...

    Java 工厂设计模式例题

    例题简单的阐述了Java工厂模式的概念,有利于读者更好地了解Java工厂模式

    Java 经典设计模式讲解以及项目实战

    Java 经典设计模式讲解以及项目实战 设计模式简介:主要介绍各种设计模式的概念和运用场景等 设计模式综合运用:主要是笔者在实际工作中运用到的一些设计模式综合运用事例的提炼 Spring设计模式简介:主要是讲述...

    JAVA设计模式之抽象工厂

    **JAVA设计模式之抽象工厂** 在软件工程中,设计模式是一种通用的解决方案,用来解决在特定上下文中反复出现的问题。抽象工厂(Abstract Factory)模式是其中一种创建型设计模式,它提供一个创建对象的接口,但允许...

    JAVA设计模式(java设计)

    Java设计模式是面向对象编程领域中的重要概念,它是一套被广泛接受并实践的解决软件设计问题的经验总结。设计模式并非具体的代码或库,而是一种在特定情境下为了解决常见问题而制定的通用解决方案的描述。它们描述了...

    java设计模式pdf

    ### Java设计模式详解 #### 一、背景与概念 在软件工程领域,设计模式是一种用于解决常见问题的可重用解决方案。《Java设计模式PDF》是一本由James W. Cooper编写的经典书籍,该书详细介绍了Java编程语言中的设计...

    《java设计模式》课后习题模拟试题解答——刘伟.zip

    Java设计模式是软件工程中的一种最佳实践,它总结了在特定场景下解决常见问题的经验,为程序员提供了可重用的解决方案。本资料“《java设计模式》课后习题模拟试题解答——刘伟.zip”主要涵盖了Java设计模式的学习与...

    《Java设计模式》课程设计报告.docx

    《Java设计模式》课程设计报告主要探讨了如何利用Java编程语言和MyEclipse集成开发环境来实现基于设计模式的西瓜市场系统。这个项目涵盖了四种重要的设计模式:单例模式、代理模式、建造者模式和抽象工厂模式,为...

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

    在"JAVA设计模式之抽象工厂模式"的示例中,可能会包含这些角色的实现以及如何在实际场景中应用抽象工厂模式的解释和示例代码。这个压缩包可能包含了详细的设计和实现,帮助学习者深入理解抽象工厂模式的工作原理及其...

    《Java设计模式》刘伟 课后习题及模拟试题答案.rar

    《Java设计模式》是刘伟老师的一本经典教材,它深入浅出地讲解了软件设计中的重要概念——设计模式。设计模式是经验丰富的开发者在解决常见问题时总结出的通用解决方案,是软件开发中的智慧结晶。这本书的课后习题和...

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

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

    Java设计模式 设计模式介绍

    1、爪哇语言结构性模式之变压器模式介绍 2、爪哇语言抽象工厂创立性模式介绍 3、工厂方法创立性模式介绍 4、单态创立性模式介绍 5、单态创立性模式介绍 6、观察者模式介绍7、责任链模式 8、设计模式之Observer 9、...

Global site tag (gtag.js) - Google Analytics