美文网首页
工厂Demo

工厂Demo

作者: 知道吗123 | 来源:发表于2019-12-19 10:03 被阅读0次


public class PizzaStore {
    SimplePizzaFactory factory;
 
    public PizzaStore(SimplePizzaFactory factory) { 
        this.factory = factory;
    }
 
    public Pizza orderPizza(String type) {
        Pizza pizza;
 
        pizza = factory.createPizza(type);
 
        pizza.prepare();
        pizza.bake();
        pizza.cut();
        pizza.box();

        return pizza;
    }

}

public class SimplePizzaFactory {

    public Pizza createPizza(String type) {
        Pizza pizza = null;

        if (type.equals("cheese")) {
            pizza = new CheesePizza();
        } else if (type.equals("pepperoni")) {
            pizza = new PepperoniPizza();
        } else if (type.equals("clam")) {
            pizza = new ClamPizza();
        } else if (type.equals("veggie")) {
            pizza = new VeggiePizza();
        }
        return pizza;
    }
}

1.简单工厂
<1>封装变化
<2>依赖接口
<3>将变化的代码放到一起

2.工厂方法
定义:工厂方法模式定义了一个创建对象的接口,由子类决定要实例化的子类是哪一个,工厂方法让类把实例化推迟到子类 (有点像模板方法)
将产品的实现从使用中解耦

3.抽象工厂
定义:提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类
场景:车间

区别:
继承(类) 和 组合(对象)
工厂方法提供框架
抽象工厂把一群相关产品集合起来,创建产品家族

依赖倒置

相关文章

  • 工厂Demo

    1.简单工厂<1>封装变化<2>依赖接口<3>将变化的代码放到一起 2.工厂方法定义:工厂方法模式定义了一个创建对...

  • Cell工厂设计

    Cell工厂设计 关于一个Cell工厂设计模式的 Demo Model层 .首先建立 BaseModel并继承他建...

  • IOS-工厂模式-Demo

    案例描述:一个食品加工厂,不同的车间生产不同的食物。 工厂Controller: 工厂: 食物基类 馒头 油条

  • 简单的工厂类demo

  • 抽象工厂模式Demo讲解

    0.背景 小明是一位艺术总监,他准备开一些艺术工厂(factory),但是由于资金问题,这些艺术工厂暂时只做一件事...

  • 设计模式

    认识过程 仰视 简单 第一版demo 第二版demo + 思考 + 使用 遇到过的模式: spring 的工厂模式...

  • (五)大话设计模式 - 工厂方法与抽象工厂(IOS版)

    之前有写过一个简单工厂的的demo,接下来来一起实现一下它的升级版:工厂方法和抽象工厂 代码实现 - 工厂方法 我...

  • spring 设计模式篇—工厂模式

    一、解决了什么问题? 二、工厂模式演变过程,及代码实现demo 三、源-简单工厂 Car.java BmCar.j...

  • 简单工厂模式

    工厂模式 简单例子Demo 创建一个 接口类Animals.javapublic interface Animal...

  • 工厂模式及抽象工厂模式简介

    本文介绍了工厂模式,抽象工厂模式并附有java代码实现demo。内容仅供参考使用,有不足之处请及时指出,也欢迎大家...

网友评论

      本文标题:工厂Demo

      本文链接:https://www.haomeiwen.com/subject/umfmnctx.html