• 工厂模式与抽象工厂模式


    1、工厂模式:定义了一组创建对象的接口,但是由子类决定要实例化的类是哪一个。工厂方法把类的实例化推迟到子类中。

    现在考虑有PizzaStore有一些子类(加盟店),他们有可能对pizza的做法进行一些改良,即createPizza方法需要升级。工厂方法的做法是,在基类中建立一个形为abstract Product factoryMethod(String type) 的方法,作为工厂方法,负责创建对象,子类可以通过改写这一方法来改变创建对象的具体过程。

    子类返回的Pizza类型的对象,父类可以拿来统一使用,不用关心具体的类型

    2、抽象工厂模式:提供一个接口,用于创建一个对象家族,而无需指定具体类。

    工厂方法只涉及到创建一个对象的情况,有时我们需要一族对象,比如书中的例子:原料家族。
    制作pizza需要很多原料,每个都需要一个工厂方法。这时我们把所有涉及到创建对象的方法集合到一起成为一个接口。
    使用者针对这个接口编程,而接口由具体的类来实现。这样一来我们可以根据情况把相应的实现此接口的类传递给使用者。
  • 相关阅读:
    Makefile:2:*** missing separator. Stop.
    Code笔记之:对使用zend加密后的php文件进行解密
    Apache 访问控制
    leetcode-21-合并两个有序链表
    tcp四次挥手的过程
    实现一个LRU算法
    redis为什么快
    二月春日
    你的支持会鼓励我更积极地创作
    静夜思·静夜祈愿
  • 原文地址:https://www.cnblogs.com/mingziday/p/4853265.html
Copyright © 2020-2023  润新知