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所封装的知识是关于如何制作芝加哥风味的匹萨
     
     
    (转载请注明出处 ^.^)
  • 相关阅读:
    AC自动机【萌新文章】
    ubuntu安装pandas
    pandas.Series函数用法
    关于scikit-learn
    关于scikit-learn
    Ubuntu安装openmpi
    Ubuntu分区小知识与分区方案
    Ubuntu16.04安装x11VNC远程桌面
    Ubuntu用户权限管理(chown, chmod)
    Ubuntu新建用户组
  • 原文地址:https://www.cnblogs.com/windlaughing/p/2989185.html
Copyright © 2011-2022 走看看