当前位置:网站首页>【DesignMode】模板方法模式(Template method pattern)
【DesignMode】模板方法模式(Template method pattern)
2022-07-07 14:16:00 【weixin_43224306】
基本介绍
模板方法模式(Template Method Pattern),又叫模板模式(Template Pattern),z 在一个抽象类公开定义了执行它的方法的模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。
简单说,模板方法模式 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构,就可以重定义该算法的某些特定步骤
这种类型的设计模式属于行为型模式。
1. 豆浆制作问题
编写制作豆浆的程序,说明如下:
制作豆浆的流程 选材—>添加配料—>浸泡—>放到豆浆机打碎
通过添加不同的配料,可以制作出不同口味的豆浆
选材、浸泡和放到豆浆机打碎这几个步骤对于制作每种口味的豆浆都是一样的
请使用 模板方法模式 完成 (说明:因为模板方法模式,比较简单,很容易就想到这个方案,因此就直接使用,不再使用传统的方案来引出模板方法模式 )
2. 模板方法模式基本介绍
基本介绍
模板方法模式(Template Method Pattern),又叫模板模式(Template Pattern),z 在一个抽象类公开定义了执行它的方法的模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。
简单说,模板方法模式 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不
边栏推荐
- Leetcode-231-2的幂
- hellogolang
- leetcode 241. Different ways to add parentheses design priority for operational expressions (medium)
- MySQL数据库基本操作-DQL-基本查询
- Unity drawing plug-in = = [support the update of the original atlas]
- 3000 words speak through HTTP cache
- How can laravel get the public path
- Dotween -- ease function
- Unity3D_ Class fishing project, control the distance between collision walls to adapt to different models
- Bidding announcement: Fujian Rural Credit Union database audit system procurement project (re bidding)
猜你喜欢
谈谈 SAP iRPA Studio 创建的本地项目的云端部署问题
HAVE FUN | “飞船计划”活动最新进展
Xcode Revoke certificate
Enterprise log analysis system elk
Mysql database basic operation DQL basic query
分步式監控平臺zabbix
【Vulnhub靶场】THALES:1
95.(cesium篇)cesium动态单体化-3D建筑物(楼栋)
torch.numel作用
Performance comparison of tidb for PostgreSQL and yugabytedb on sysbench
随机推荐
U3D_ Infinite Bessel curve
Bidding announcement: Fujian Rural Credit Union database audit system procurement project (re bidding)
Power of leetcode-231-2
Bidding announcement: Panjin people's Hospital Panjin hospital database maintenance project
分步式監控平臺zabbix
pycharm 终端部启用虚拟环境
安科瑞电网智能化发展的必然趋势电力系统采用微机保护装置是
Statistical learning method -- perceptron
Shader_ Animation sequence frame
Continuous creation depends on it!
Logback logging framework third-party jar package is available for free
The difference and working principle between compiler and interpreter
Set the route and optimize the URL in thinkphp3.2.3
Bidding announcement: 2022 Yunnan Unicom gbase database maintenance public comparison and selection project (second) comparison and selection announcement
Shandong old age Expo, 2022 China smart elderly care exhibition, smart elderly care and aging technology exhibition
如何快速检查钢网开口面积比是否符合 IPC7525
Dotween -- ease function
Eye of depth (VII) -- Elementary Transformation of matrix (attachment: explanation of some mathematical models)
asyncio 概念和用法
Prediction - Grey Prediction