美文网首页
模板方法模式

模板方法模式

作者: 老九君 | 来源:发表于2019-08-13 16:30 被阅读0次

    模板方法模式简述

    有些时候我们做某几件事情的步骤都差不多,仅有那么一小点的不同,在软件开发的世界里同样如此,如果我们都将这些步骤都一一做的话,费时费力不讨好。所以我们可以将这些步骤分解、封装起来,然后利用继承的方式来继承即可,当然不同的可以自己重写实现嘛!这就是模板方法模式提供的解决方案。

    所谓模板方法模式就是在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。

          运行结果如图:

    优缺点及适用情况

    优点:

    模板方法模式通过把不变的行为搬移到超类,去除了子类中的重复代码

    子类实现算法的某些细节,有助于算法的扩展

    通过一个父类调用子类实现的操作,通过子类扩展增加新的行为,符合“开放-封闭原则”

    缺点:

    每个不同的实现都需要定义一个子类,这会导致类的个数的增加,设计更加抽象

    适用情况:

    在某些类的算法中,用了相同的方法,造成代码的重复

    控制子类扩展,子类必须遵守算法规则

    老九学堂出品,转载请私信哦

    对于文章内容有不理解的可以添加老九君个人QQ:614940318,请备注来自简书

    老九学堂免费C、C++、Java课程地址:

    https://study.163.com/courses-search?keyword=%E8%80%81%E4%B9%9D%E5%AD%A6%E5%A0%82

    相关文章

      网友评论

          本文标题:模板方法模式

          本文链接:https://www.haomeiwen.com/subject/snsbjctx.html