【设计模式】Template Method模式

【设计模式】Template Method模式

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

OO基金会

封装

多态

继承


OO原则

封装变化

多用组合,少用继承

针对接口编程。不针对实现编程

为交互对象的松耦合设计而努力

类应该对扩展开放,对改动关闭

依赖抽象,不要依赖详细类

仅仅和朋友交谈

别找我,我会找你


OO模式

模版方法模式——在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。

模版方法使得子类能够在不改变算法结构的情况下,又一次定义算法中的某些步骤。


1. “模版方法”定义了算法的步骤,把这些步骤的实现延迟到子类。

2. 模版方法模式为我们提供了一种代码复用的重要技巧。

3. 模版方法的抽象类能够定义详细方法,抽象方法和钩子。

4. 抽象方法由子类实现。

5. 钩子是一种方法,它在抽象类中不做事,或者仅仅做默认的事情,子类能够将模版方法声明为final。

6. 好莱坞原则告诉我们,将决策权放在高层模块中。以便决定怎样以及何时调用低层模块。

7. 你将在真实世界代码中看到模版方法模式的很多变体,不要期待它们全都是一眼就能够被你认出的。

8. 策略模式和模版方法模式都封装算法。一个用组合,一个用继承。

9. 工厂方法是模板方法的一个特殊版本。

版权声明:本文博主原创文章。博客,未经同意不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116806.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月15日 上午9:00
下一篇 2022年1月15日 上午10:00


相关推荐

  • 一张图快速了解23种设计模式

    一张图快速了解23种设计模式设计模式设计模式是对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述 这是 设计模式 可复用面向对象软件的基础 DesignPatter ElementsofRe Oriented 中对设计模式的定义 看完以后你会不会和我有一样的感觉 这特么说是啥 于是 我找到了英文原文 Thedesignpat

    2026年3月17日
    1
  • 23种设计模式(15):备忘录模式

    23种设计模式(15):备忘录模式

    2021年11月16日
    45
  • 深入理解适配器设计模式(java版本)

    深入理解适配器设计模式(java版本)

    2021年8月3日
    65
  • 《JavaScript 模式》读书笔记(7)— 设计模式1

    这些模式已经出现了相当长的一段时间,并被证明在许多情况下都非常有用。这也是为什么需要自己熟悉并谈论这些模式的原因。虽然这些设计模式是与语言和实现方式无关的,并且人们已经对此研究了多年,但都主要是从强

    2022年3月25日
    44
  • 深入理解设计模式之建造者模式

    深入理解设计模式之建造者模式老大突然拉住我,喜滋滋地告诉我:“公司很满意我们做的模型,又签订了一个合同,把奔驰、宝马的车辆模型都交给我们公司制作了,不过这次额外增加了一个新需求:汽车的启动、停止、喇叭声音、引擎声音都由客户自己控制,想什么顺序就什么顺序”那我们开始设计,来看一下类图:类图比较简单,在CarModel中我们定义了一个setSequence方法,车辆模型的这几个动作要如何排布,是在这个ArrayList中定义的。然后run()方法根据sequence定义的顺序完成指定的顺序动作。我们来看模型抽象类代码:

    2025年6月25日
    10
  • 设计模式、框架、架构、平台的区别「建议收藏」

    设计模式、框架、架构、平台的区别「建议收藏」区分什么是架构、框架、模式和平台,一直都感觉这几个词过于抽象和模糊,今天大家来说说到底什么是架构、框架、模式和平台? 收集了的一些来自网上各自的定义和区分如下: 设计模式 1、设计模式为什么要先说设计模式?因为设计模式在这些概念中是最基本的,而且也比较简单。那么什么是设计模式呢?说的直白点,设计模式就是告诉你针对特定问题如何组织类、对象和接口之间的关系,是前人总结的经验

    2022年10月10日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号