`
tonyan416
  • 浏览: 29171 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

设计模式之工厂模式simple factroy

阅读更多
Simple Factory模式(又称Static Factory模式),一个Simple Factory生产成品,而对客户端隐藏产品产生的细节。实作时定义一个产品界面(interface),并透过特定静态方法来建立成品。

假设有一个水果工厂,购买水果的客人不用知道水果是如何种植的,他只要知道如何拿到就可以了
Client代表了客户的角色,它只依赖于Fruit界面,而不关心特定的实作,实际如何产生Fruit的实例由FruitFactory完成
Fruit.java
public interface Fruit {
   public void grow(String f);
}

Grape.java
public class Grape implements Fruit{
@Override
public void grow(String f) {
	System.out.println("I grows grapes:"+f);
	
}
}

StrawBerry.java
public class StrawBerry implements Fruit{
 @Override
public void grow(String f) {
	System.out.println("I grow strawberry:"+f);
}
}

FruitFactory.java
public class FruitFactory {

public static Fruit grows(int d){
	Fruit f=null;
	if ( d==1)
	f=new Grape();
	if (d==2)
	f=new StrawBerry();
	return f;
}
}

Client.java
public class Client {
public  static void  main(String args[]){
	Fruit f=FruitFactory.grows(2);
	f.grow("I choose I like...");
}
}

客户端只依赖于Fruit界面,所以即使您日后改变了grows()中的实作方式,对客户端是一点影响也没有的。
客户只要面对Factory,客户依赖于产品介面,产品的具体实作是可以与客户隔开的,它们也是可以抽换的。
分享到:
评论

相关推荐

    设计模式 创建型模式 Simple Factory模式(简单工厂)

    Simple Factory模式: 定义创建对象的接口,并封装对象的创建。 一般情况下,我们为了提高内聚和松耦合,经常会使用多态来处理一些问题。抽象出一些类的公共接口作为抽象基类或者接口。这样的话,我们将会面临一个...

    JAVA设计模式(01):创建型-工厂模式【简单工厂模式】(Simple Factory)

    JAVA设计模式(01):创建型-工厂模式【简单工厂模式】(Simple Factory)

    java 设计模式 Facade外观模式 Simple Factory 简单工厂模式

    java 设计模式 Facade外观模式 Simple Factory 简单工厂模式,代码有点罗嗦,不过可移植性很强

    Java设计模式之工厂模式(Factory)

    1. 简单工厂模式(Simple Factory) 2. 工厂方法模式(Factory Method) 3. 抽象工厂模式(Abstract Factory) 这三种模式从上到下逐步抽象,并且更具一般性。还有一种分类法,就是将简单工厂模式看为工厂方法模式的一...

    设计模式 t01SimpleFactory

    设计模式 t01SimpleFactory

    Java设计模式简单工厂模式

    Java设计模式之一简单工厂模式(SimpleFactory)源码

    001SimpleFactory.rar

    设计模式中Simple Factory 工厂模式代码

    Simple Factory Pattern.rar【GoF的简单工厂模式(C#源码)】

    简单工厂(Simple Factory)模式又称为静态工厂方法(Static Factory Method)模式,属于类的创建型模式,通常它根据自变量的...SimpleFactory作为Creator。我已经用C#的源码编程了:请下载Simple Factory Pattern.rar

    C#设计模式.PDF

    C#设计模式(4)-Simple Factory Pattern 24 一、 简单工厂(Simple Factory)模式 24 二、 Simple Factory模式角色与结构: 24 三、 程序举例: 25 四、 Simple Factory模式演化 27 五、 优点与缺点: 29 C#设计...

    SimpleFactory

    讲解了设计模式中的工厂模式:包括简单工厂,工厂方法,抽象工厂

    36种最新设计模式整理

    36种最新设计模式整理 Design Pattern: Simple Factory 模式 Design Pattern: Abstract Factory 模式 Design Pattern: Builder 模式 Design Pattern: Factory Method 模式 Design Pattern: Prototype 模式 ...

    简单工厂模式

    java设计模式 简单工厂模式详解 simple factory static pattern

    Simple Factory模式.doc

    这主要很快地让你了解工厂设计模式,java里面Factory模式的设计过程

    JAVA工厂模式

    GOF在《设计模式》一书中将工厂模式分为两类:工厂方法模式(Factory Method)与抽象工厂模式(Abstract Factory)。将简单工厂模式(Simple Factory)看为工厂方法模式的一种特例,两者归为一类。 两者皆可,在...

    C#设计模式大全

    C#设计模式(4)-Simple Factory Pattern 一、 简单工厂(Simple Factory)模式 二、 Simple Factory模式角色与结构: 三、 程序举例: 四、 Simple Factory模式演化 五、 优点与缺点: C#设计模式(5)-...

    C#设计模式-吕震宇

    本资料来源于吕震宇博客,欢迎访问 ...经过整理,方便大家阅读。...C#设计模式(4)-Simple Factory Pattern C#设计模式(3) - 设计原则(2) C#设计模式(2) - 设计原则(1) C#设计模式(1) - 面向对象基本概念复习

    Python设计模式之简单工厂模式实例详解

    本文实例讲述了Python设计模式之简单工厂模式。分享给大家供大家参考,具体如下: 简单工厂模式(Simple Factory Pattern):是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类. 下面使用...

    各种设计模式及解析

    1、命令模式 Command (人,开关,电灯) 2、策略模式 Strategy (用户选择各种排序方法进行排序) 3、简单工厂 Simple Factory (很多的产品,由一个工厂出产) ...7、代理模式、观察者模式、工厂模式、装饰模式等

    [源代码] 《易学 设计模式》 随书源代码

    第03章 术业有专攻:简单工厂模式 (SimpleFactory) 第04章 精益求精:工厂方法模式 (FactoryMethod) 第05章 再接再厉:抽象工厂模式 (AbstractFactory) 第06章 孜孜不倦:创建者模式 (Builder) 第07章 照猫画虎:...

    php设计模式之简单工厂模式详解

    1、简单工厂模式(Simple Factory)又叫做 静态工厂方法模式(Static Factory Method) 2、工厂方法模式(Factory Method)又叫做 多态性工厂模式(Polymorphic Factory) 3、抽象工厂模式(Abstract Factory)又叫做 工具...

Global site tag (gtag.js) - Google Analytics