zoukankan      html  css  js  c++  java
  • 工厂方法模式 The Factory Method Pattern

    工厂方法模式
         定义了一个创建对象的接口,但是由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。
    • 使用new时,是针对实现编程,依赖具体类
    • 工厂方法模式将产品的“实现”从“使用”中解耦
    • “工厂”封装实例化的行为
     
    设计原则
    6、要依赖抽象,不要依赖具体类
     
    工厂方法类图:
    1、PizzaStore类实现操纵产品的方法,但不实现工厂方法,由子类实现。
    public abstract class PizzaStore {
         abstract Pizza createPizza(String item);//工厂方法为抽象方法

         public Pizza orderPizza(String type) {
              Pizza pizza = createPizza(type);
              System.out.println("--- Making a " + pizza.getName() + " ---");
              pizza.prepare();
              pizza.bake();
              pizza.cut();
              pizza.box();
              return pizza;
         }
    }
    2、把对象的创建委托给子类,子类实现抽象的工厂方法来创建具体产品。(使用继承)
         NYPizzaStore所封装的知识是关于如何制作纽约风味的匹萨
         ChicagoPizzaStore所封装的知识是关于如何制作芝加哥风味的匹萨
     
     
    (转载请注明出处 ^.^)
  • 相关阅读:
    复杂业务
    重析业务逻辑架构模式
    Katana介绍以及使用
    使用ServiceStack构建Web服务
    ASP.NET vNext 在 Mac OS
    用户端的防腐层作用及设计
    Mvc 模块化开发
    编程语言
    页面生命周期
    If you pay peanuts,you get monkeys
  • 原文地址:https://www.cnblogs.com/windlaughing/p/2989185.html
Copyright © 2011-2022 走看看