PHP模板方法模式是怎样的,如何实现呢?
Admin 2022-09-20 群英技术资讯 622 次浏览
模板方法模式模式是一种行为型模式,它定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。Template Method 使得子类可以在不改变一个算法的结构的情况下重定义该算法的某些特定的步骤。
抽象模板(AbstractClass)角色
定义一个或多个抽象方法让子类实现。这些抽象方法叫做基本操作,它们是顶级逻辑的组成部分。
定义一个模板方法。这个模板方法一般是一个具体方法,它给出顶级逻辑的骨架,而逻辑的组成步骤在对应的抽象操作中,这些操作将会推迟到子类中实现。同时,顶层逻辑也可以调用具体的实现方法
具体模板(ConcrteClass)角色
实现父类的一个或多个抽象方法,作为顶层逻辑的组成而存在。
每个抽象模板可以有多个具体模板与之对应,而每个具体模板有其自己对抽象方法(也就是顶层逻辑的组成部分)的实现,从而使得顶层逻辑的实现各不相同。
<?php abstract class AbstractClass { // 抽象模板角色 public function templateMethod() { // 模板方法 调用基本方法组装顶层逻辑 $this->primitiveOperation1(); $this->primitiveOperation2(); } abstract protected function primitiveOperation1(); // 基本方法 abstract protected function primitiveOperation2(); } class ConcreteClass extends AbstractClass { // 具体模板角色 protected function primitiveOperation1() {} protected function primitiveOperation2(){} } $class = new ConcreteClass(); $class->templateMethod(); ?>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
今天小编就为大家分享一篇laravel通过a标签从视图向控制器实现传值,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
php中Zend框架的介绍:1、说明,是一个高质量的综合框架,能够有效地发挥出PHP5的优势,并延续简单易用的特点;2、优点,应用了PHP5中面向对象的新特征;3、缺点,MVC功能完成比较弱、没有自动化脚本。
正则表达式是程序开发中一个重要的元素,它提供用来描述或匹配文本的字符串,如特定的字符、词或算式等。但在某些情况下,用正则表达式去验证一个字符串比较复杂和费时。...
PHP是通过print和echo语句来动态输出HTML内容,虽然print和echo语句两者的功能几乎是完全一样,但是还是有一点差别的。
PHP如何实现多继承?PHP本身是不支持多继承的,只支持单继承,但是我们能通过的别的方法来实现php多继承。下面就给大家分享一些实现php多继承的常见方法。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008