设计模式之工厂模式

简介: 简单工厂模式 简单工厂其实不算是一个真正的“模式”,反而像一种编程习惯。如下面披萨的简单工厂类图:披萨商店将生产披萨的任务交给披萨工厂,只负责获取从工厂返回的披萨对象即可。 工厂模式 工厂方法模式定义 工厂方法模式定义了一个创建对象的接口,但由子类决定到底要实例化的类是哪一个。

简单工厂模式

简单工厂其实不算是一个真正的“模式”,反而像一种编程习惯。
如下面披萨的简单工厂类图:
在这里插入图片描述
披萨商店将生产披萨的任务交给披萨工厂,只负责获取从工厂返回的披萨对象即可。

工厂模式

工厂方法模式定义

工厂方法模式定义了一个创建对象的接口,但由子类决定到底要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。
类图如下:
在这里插入图片描述

抽象工厂模式定义

抽象工厂模式提供一个接口,用来创建相关或依赖对象的家族,而不需要明确指定具体类。
类图如下:
在这里插入图片描述

用披萨的例子来看 如下:
在这里插入图片描述
简单工厂模式
简单工厂其实不算是一个真正的“模式”,反而像一种编程习惯。
如下面披萨的简单工厂类图:
在这里插入图片描述
披萨商店将生产披萨的任务交给披萨工厂,只负责获取从工厂返回的披萨对象即可。

工厂模式
工厂方法模式定义
工厂方法模式定义了一个创建对象的接口,但由子类决定到底要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。
类图如下:
在这里插入图片描述

抽象工厂模式定义
抽象工厂模式提供一个接口,用来创建相关或依赖对象的家族,而不需要明确指定具体类。
类图如下:
image

相关文章
|
9月前
|
设计模式 存储 Java
设计模式-工厂模式
设计模式-工厂模式
77 1
|
设计模式 Java
设计模式~工厂模式-03
工厂模式 简单工厂模式 优点: 缺点: 工厂方法模式
62 0
|
设计模式 Java C++
设计模式之工厂模式详解和应用
设计模式之工厂模式详解和应用
83 0
|
5月前
|
设计模式 Java 关系型数据库
设计模式——工厂模式
工厂模式介绍、静态简单工厂模式、工厂方法模式、抽象工厂模式、JDK 源码分析
设计模式——工厂模式
|
8月前
|
设计模式 数据格式 XML
设计模式-工厂模式-1-1
【6月更文挑战第10天】本文介绍了工厂模式的两种主要类型:简单工厂和工厂方法。简单工厂模式通过工厂类动态创建对象,例如根据配置文件后缀选择不同解析器。为提高可读性和复用性,可将创建逻辑封装到独立类中。当需添加新解析器时,可能涉及对工厂类的修改,但这在偶尔调整时可接受。工厂方法模式则通过多态消除if分支,增加扩展性,更符合开闭原则。当需要新增解析器时,只需创建实现特定接口的新工厂类。
39 2
设计模式-工厂模式-1-1
|
9月前
|
设计模式 消息中间件 Java
设计模式之工厂模式(C++)
设计模式之工厂模式(C++)
103 0
|
9月前
|
设计模式 算法 uml
C++设计模式(工厂模式)
C++设计模式(工厂模式)
122 1
C++设计模式(工厂模式)
|
设计模式 前端开发 Java
设计模式之工厂模式(1)
工厂模式是一种对象创建型模式,它提供了一种创建对象的最佳实践。在工厂模式中,我们在创建对象时不使用 new 关键字,而是通过调用工厂方法来创建对象。工厂方法是一种在子类中定义的方法,该方法负责实例化对象。工厂方法可以返回不同的对象类型,因此工厂模式可以创建一组相关或不相关的对象。这样就可以将对象的创建和使用解耦。
82 0
|
设计模式 Java 数据库
设计模式之工厂模式(一)
设计模式之工厂模式
68 0
|
设计模式 消息中间件 Java
一起来学设计模式之工厂模式
前言 目前正在出一个设计模式专题系列教程, 篇幅会较多, 喜欢的话,给个关注❤️ ~ 本节给大家讲一下设计模式中的工厂模式~ 本专题的所有案例代码主要以Java语言为主, 好了, 废话不多说直接开整吧~ 工厂模式 工厂模式是一种常用的设计模式,它提供了一种创建对象的方式,该方式隐藏了对象创建的细节并提供了一个通用的接口,从而使得代码更加灵活和可扩展。在工厂模式中,我们将对象的创建过程封装到一个工厂类中,通过工厂类来创建具体的对象,这样客户端就不需要关心对象的创建过程,只需要调用工厂类提供的接口来获取所需的对象即可。