当前位置: 首页 > article >正文

工厂方法模式(Factory Method Pattern)

原文地址:https://jaune162.blog/design-pattern/factory-method-pattern/

概述

工厂方法模式(Factory Method Pattern)是一个对象创建型模式。

定义一个用于创建对象的接口,让子类决定实例化哪一个类。 Factory Method使一个类的实例化延迟到其子类。

– 《设计模式:可复用面向对象软件的基础》

说的更直白一点就是,定义一个工厂接口,将对象的实例化操作放到工厂的实现类中。

解析

这个例子中有饮品 Drink 和饮品工厂 DrinkFactoryDrinkFactory 负责生产 Drink。在现实生活中可口可乐(Coca)和奶茶(MilkyTea),不是由一家生产的,而是生产可口可乐的工厂生产可口可乐,Coco奶茶店可以生产奶茶。

当我们需要奶茶饮品的时候就需要用 CocoDrinkFactory 生产,当我们需要可口可乐的时候就需要用 CocaDrinkFactory 生产。

这个例子不太恰当,因为我们不会直接从可口可乐工厂购买可口可乐。但是我认为用这个例子来解释工厂方法模式是没有问题的。而且能够清晰的描述出工厂方法模式的使用场景。

public interface Drink {
   
}

http://www.kler.cn/news/233337.html

相关文章:

  • 【开源计算机视觉库OpencV详解——超详细】
  • 【Scala】 2. 函数
  • containerd中文翻译系列(十)镜像验证
  • 《PCI Express体系结构导读》随记 —— 第II篇 第4章 PCIe总线概述(11)
  • Python学习路线 - Python高阶技巧 - PySpark案例实战
  • Javaweb之SpringBootWeb案例之异常处理功能的详细解析
  • C#中的浅度和深度复制(C#如何复制一个对象)
  • 深度学习技巧应用36-深度学习模型训练中的超参数调优指南大全,总结相关问题与答案
  • UI自动化之Poco常用断言方式
  • RCE(命令执行)知识点总结最详细
  • [day0] 借着“ai春晚”开个场
  • 单片机学习笔记---LED点阵屏显示图形动画
  • 从零开发短视频电商 Tesseract OCR 的 Java 拓展库 javacpp-presets
  • 计算机网络(第六版)复习提纲25
  • Windows 远程桌面提示没有远程桌面授权服务器可以提供许可证
  • Unity3D实现项目限制功能(使用次数限制和时间限制)
  • 【C++】引用与内联
  • 【Flink】SQL-CLIENT中出现 Could not find any factory for identifier ‘kafka‘
  • 5 scala的函数式编程简介
  • 【QT】Graphics View绘图架构
  • 【Redis】深入理解 Redis 常用数据类型源码及底层实现(3.详解String数据结构)
  • Vue源码系列讲解——虚拟DOM篇【二】(Vue中的DOM-Diff)
  • 【linux开发工具】vim详解
  • SpringBoot WebSocket客户端与服务端一对一收发信息
  • html5 audio video
  • [高性能] - 缓存架构
  • 《走进科学》灵异事件:Nginx配置改了之后一直报错
  • 使用 WMI 查询安全软件信息
  • C/C++ 关于 SHA256 的使用
  • B站弹幕分析系统