`
puppy117
  • 浏览: 52179 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

Factory Method Design Pattern工厂方法模式

阅读更多

package factoryMethod;

 

public interface Mobile {

   public void call();

}

public class Motorola implements Mobile {

   public void call() {    

      System.out.println("Motorola produced");

   }

}

public class Nokia implements Mobile {

   public void call() {    

      System.out.println("Nokia produced");

   }

}

public interface MobileFactory {

   public Mobile produceMobile();

}

public class MotorolaFactory implements MobileFactory {

   public Mobile produceMobile(){

      return new Motorola();

   }

}

public class NokiaFactory implements MobileFactory{

   public Mobile produceMobile(){

      return new Nokia();

   }

}

public class Client {

   public static void main(String args[]){

      MobileFactory mf = new MotorolaFactory();

      Mobile mb = mf.produceMobile();

      mb.call();

      mf = new NokiaFactory();

      mb = mf.produceMobile();

      mb.call();

   }

}

运行结果:

Motorola produced
Nokia produced

 

A factory method can be defined as a method in a class that:
(1)Selects an appropriate class from a class hierarchy based on the application context and other influencing factors
(2)Instantiates the selected class and returns it as an instance of the parent class type

分享到:
评论

相关推荐

    C++设计模式(Design Pattern)范例源代码

    工厂方法模式(Factory Method) 原型模式(Prototype) 单件模式(Singleton) 结构型: 适配器模式(Adapter) 桥接模式(Bridge) 组合模式(Composite) 装饰者模式(Decorator) 外观模式(Facade) 蝇量模式(Flyweight) 代理...

    factory mode ppt in design pattern

    《设计模式中的工厂方法》 设计模式是软件开发中的一种...总的来说,工厂方法模式在设计模式中占有重要地位,尤其在需要灵活创建多种类型对象的场景下。理解并正确运用工厂方法,能够提升软件的可维护性和可扩展性。

    Design Pattern & Examples

    本文将深入探讨工厂方法模式(Factory Method Pattern)与抽象工厂模式(Abstract Factory Pattern),并结合给定文件中的实例进行详细解析。 ### 工厂方法模式(Factory Method Pattern) 工厂方法模式是一种创建...

    JAVA 23种设计模式(全).Design Pattern_Java模式

    1. **创建型模式**(Creational Patterns):这类模式主要关注对象的创建过程,包括单例模式(Singleton)、工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、建造者模式(Builder)和原型模式...

    Factory_Method&&Simple_Factory

    工厂方法模式(Factory Method Pattern)是设计模式中的创建型模式之一,主要解决对象创建过程中的复杂性问题。在软件工程中,当一个类不知道它所必须创建的对象的类的时候,它就不会实例化对象,而是使用一个工厂...

    DesignPattern(VS2019_观察者模式_工厂模式_抽象工厂模式)完整示例源代码.zip

    2. **工厂方法模式(Factory Method Pattern)**:定义一个创建对象的接口,让子类决定实例化哪一个类。工厂方法让类的实例化推迟到子类。在C++中,这可能表现为一个抽象基类(接口)定义了一个纯虚函数,每个具体的...

    Design*Pattern*Framework*4.5

    创建型模式涉及对象的创建,如单例(Singleton)、工厂方法(Factory Method)和建造者(Builder);结构型模式关注如何组合对象和类以形成更大的结构,例如适配器(Adapter)、装饰器(Decorator)和代理(Proxy)...

    designpattern.zip

    创建型设计模式关注对象的创建过程,如单例模式(Singleton)、工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、建造者模式(Builder)和原型模式(Prototype)。这些模式帮助开发者在不指定...

    IOS 工厂方法模式代码Demo

    在“DesignPattern_FactoryMethodPattern”这个压缩包中,我们可以预期找到以下组成部分: 1. **抽象工厂(AbstractFactory)**:这是一个协议或抽象类,定义了创建对象的接口。在Objective-C中,通常会用到`@...

    DesignPattern

    在实际开发中,我们还可以考虑使用其他类型的工厂模式,如工厂方法模式(Factory Method Pattern)和抽象工厂模式(Abstract Factory Pattern),以适应更复杂的场景。工厂方法模式允许子类决定实例化哪一个产品类,...

    Head First Design Pattern

    1. 创建型设计模式:如单例模式(Singleton)、工厂方法模式(Factory Method)、抽象工厂模式(Abstract Factory)、建造者模式(Builder)和原型模式(Prototype)。这些模式主要关注对象的创建过程,帮助我们控制...

    设计模式源码Head_First_DesignPattern_src

    8. 模板方法模式(Template Method): 模板方法模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。`TemplateMethodExample`展示了如何通过定义模板方法来确保某些步骤的执行顺序,同时允许子类重写具体...

    design pattern设计模式范例

    3. 行为型模式:这些模式关注对象之间的交互和职责分配,如策略模式(Strategy)、模板方法模式(Template Method)、观察者模式(Observer)、命令模式(Command)、迭代器模式(Iterator)、访问者模式(Visitor)...

    Design Pattern英文版

    - 工厂方法模式(Factory Method):定义一个用于创建对象的接口,让子类决定实例化哪一个类。 - 抽象工厂模式(Abstract Factory):提供一个接口,用于创建相关或依赖对象的家族,而无需指定具体类。 - 建造者...

    Design Pattern(设计模式)讲义

    - **模板方法模式(Template Method)**:定义一个操作中的算法骨架,而将一些步骤延迟到子类中。 - **访问者模式(Visitor)**:表示一个作用于某对象结构中的各元素的操作。 #### 三、超出了GoF的设计模式 除了...

    JAVA design pattern-java设计模式

    创建型模式关注对象的创建,如单例(Singleton)、工厂方法(Factory Method)和抽象工厂(Abstract Factory)。这些模式帮助我们控制实例化过程,使代码更具灵活性和可扩展性。 结构型模式涉及到如何组合类和对象...

    DesignPattern_设计模式c++_

    14. **模板方法模式(Template Method)**:在一个方法中定义一个算法的框架,允许子类重新定义该算法的某些特定步骤。在C++中,基类可以声明虚函数并在其中实现算法的基本框架,子类重写这些虚函数以完成具体步骤。...

    design-pattern-java.pdf

    Factory Method Pattern 工厂三兄弟之工厂方法模式(一) 工厂三兄弟之工厂方法模式(二) 工厂三兄弟之工厂方法模式(三) 工厂三兄弟之工厂方法模式(四) 抽象工厂模式-Abstract Factory Pattern 工厂三兄弟之...

    design pattern中文版

    创建型模式关注对象的创建,如单例模式(Singleton)、工厂模式(Factory Method)和抽象工厂模式(Abstract Factory)等;结构型模式处理对象组合和继承,如适配器模式(Adapter)、装饰器模式(Decorator)和代理...

Global site tag (gtag.js) - Google Analytics