简单工厂(Simple Factory)模式
Simple Factory模式根据提供给它的数据,返回几个可能类中的一个类的实例。通常它返回的类都有一个公共的父类和公共的方法。
Simple Factory模式实际上不是GoF 23个设计模式中的一员。
Simple Factory模式角色与结构:
工厂类角色Creator (LightSimpleFactory):工厂类在客户端的直接控制下(Create方法)创建产品对象。
抽象产品角色Product (Light):定义简单工厂创建的对象的父类或它们共同拥有的接口。可以是一个类、抽象类或接口。
具体产品角色ConcreteProduct (BulbLight, TubeLight):定义工厂具体加工出的对象。
转载于:https://www.cnblogs.com/wenly/archive/2008/06/04/1213742.html
简单工厂(Simple Factory)模式相关推荐
- 简单工厂(Simple Factory)
文章目录 1.代码示例 2.简单工厂模式的定义(实现意图) 工厂模式:通过把创建对象的代码包装起来,做到创建对象的代码与具体的业务逻辑代码相隔离的目的. 工厂模式可以细分为:简单工厂模式,工厂方法模式 ...
- 本文详细介绍Python 设计模式系列之二: 创建型 Simple Factory 模式(转载)
源地址:http://doc.chinaunix.net/python/200703/202210.shtml 本文详细介绍Python 设计模式系列之二: 创建型 Simple Factory 模式 ...
- 设计模式学习笔记——抽象工厂(Abstract Factory)模式
设计模式学习笔记--抽象工厂(Abstract Factory)模式 @(设计模式)[设计模式, 设计模式中文名, 设计模式英文名] 设计模式学习笔记抽象工厂Abstract Factory模式 基本 ...
- 设计模式--抽象工厂(Abstract Factory)模式
模式定义 提供一个创建一系列相关或互相依赖对象的接口,而无需指定它们具体的类 类图 应用场景 程序需要处理不同系列的相关产品,但是你不希望它依赖于这些产品的具体类时可以使用抽象工厂模式 优点 1.可以 ...
- Java接口学习(接口的使用、简单工厂、代理模式、接口和抽象类的区别)
前言引入 官方解释:Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能). 我的 ...
- 当Android遇上设计模式之工厂方法(Factory)模式
文章目录 1. 简单工厂模式 2.1 定义 2.2 代码实现 2.3 使用场景 2. 工厂方法模式 2.1 定义 2.2 代码实现 2.3 使用场景 设计模式六大原则: 单一职责原则:就一个类仅有一个 ...
- 【Design pattern】简单工厂过渡策略模式
把自己当做小菜来跟学<大话设计模式>,跟着故事的思路来走 简单工厂模式:实现一个计算器代码 策略模式:商场打折代码 根据大鸟和小菜的故事,一步步的完善问题的过程!
- 简单工厂和策略模式结合
商场促销活动:打折.满额返现等等 主函数对工厂模式和策略模式结合的调用: class Program { static void Main(string[] args) ...
- 设计模式学习-简单工厂模式
模式概述: 专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类,简单工厂(Simple Factory)模式又称为静态工厂方法(Static Factory Method)模式,属 ...
- 《设计模式》-简单工厂模式
今天有点晚哈,周末跑去完了,回来洗澡 洗衣服 吃饭折腾了很长时间. 周末去玩有点感慨啊,去称体重发现自己又胖了... 不行啊 要减肥了啊,学习固然重要,但是身体更重要啊,为了让自己以后不变成胖子,所以 ...
最新文章
- 定位城市_北方城市如何利用GPS定位器减轻铲雪工作压力?
- 2020\Simulation_1\3.叶节点数
- 应用系统日志采集解决方案
- 程序员笔记(知识)管理的一点经验
- Unity Editor下改变场景里prefab的参数后保存时注意点
- mybatis扩展ResultMap
- STM32|4-20mA输出电路
- 嵌入式系统硬件原理设计与审核
- flink sink jdbc没有数据_一套 SQL 搞定数据仓库?Flink 有了新尝试
- java 过滤器 中文_javaweb — 过滤器(附实现中文乱码问题)
- SQL注入(SQL注入(SQLi)攻击)攻击-脱库
- 台式计算机各部分功能,台式电脑的硬件组成部分及其作用各是什么
- 已在此计算机上安装了此应用cad,电脑安装CAD时提示已安装导致安装失败的问题如何解决...
- python画兔子代码_Python基础练习实例11(兔子问题)
- python实现qq登录腾讯视频_QQ腾讯视频爬取和qv_rmt限速算法python版
- 爬取 bilibili 纪录片数据数据可视化
- 如何将D盘分区为多个磁盘(E盘,F盘等)window 10
- 多协程和队列,爬取时光网电视剧TOP100的数据(剧名、导演、主演和简介)
- SAS 9.4 的超详细安装过程(保姆级教程)(含安装包+常见问题解决)
- 转转验机源码+验机报告
热门文章
- python颜色填充代码_求懂WORD的大佬怎么一次性填充颜色或者使用python识别
- matlab销量预测的数学模型,数学建模:酒店最优化问题.用matlab算出《酒店价格预测模型》...
- ajax 限制显示条数,jquery通过ajax获取数据,控制显示的数据条数
- 计算机在化学中的应用与探索,计算机在化学中的应用
- enlink请输入正确服务器地址,Enlink
- 18计算机二级考试用word吗,计算机二级Word篇-实操真题详解18
- videojs默认显示controls 按钮功能失效_一文看懂Yearning SQL审核平台功能模块设计...
- shell脚本,结合expect给当前网段所有主机分发任意文件
- mysql longtext db2_从 MySQL 或 PostgreSQL 迁移到 DB2 Express-C
- JavaWEB开发的国际化