2 qq 34483362 qq_34483362 于 2016.03.30 16:05 提问

23种设计模式中,模板方法模式体现了什么原则,求大神

百度上看到有人说是 单一职责原则和开放封闭原则。开放封闭原则我懂,可是单一职责原则真的有吗?子类继承了父类,实现父类的方法中的具体操作,不同的子类类型有不同的实现方式,这好像不是单一职责原则的意义啊。还是说体现了其他原则?求大神,谢谢各路英雄好汉

2个回答

lx624909677
lx624909677   Ds   Rxr 2016.03.30 16:10

1)模板方法模式是一种类的行为型模式,在它的结构图中只有类之间的继承关系,没有对象关联关系。
2)板方法模式是基于继承的代码复用基本技术,模板方法模式的结构和用法也是面向对象设计的核心之一。在模板方法模式中,可以将相同的代码放在父类中,而将不同的方法实现放在不同的子类中。
3)在模板方法模式中,我们需要准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来让子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现,这就是模板方法模式的用意。模板方法模式体现了面向对象的诸多重要思想,是一种使用频率较高的模式。

qq_34483362
qq_34483362 回复lx624909677: 那到底是用了什么设计模式啊?
2 年多之前 回复
wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.30 18:10

但是模板方法是固定的,不需要也不应该被子类重写的啊。

wojiushiwo945you
wojiushiwo945you 回复%3F%3F%3F%B7%3F%3F%3F: 模板方法主要就是抽象顶层类给出了策略性的操作流程,而具体流程中的每一步都是抽象方法,需要由子类去实现。但是这个大的策略方法是不允许重写的,外界调用的也是这个大策略方法。
2 年多之前 回复
wojiushiwo945you
wojiushiwo945you 回复%3F%3F%3F%B7%3F%3F%3F: 没有什么设计原则啊,就是模板方法啊,即规定了操作流程,但是具体流程的每一步,根据实际情况而定的。
2 年多之前 回复
qq_34483362
qq_34483362 回复毕小宝: 那到底是用了什么设计原则
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
23种设计模式+六大基本原则
最近刚把《大话设计模式》看完,感觉这本书讲的还是很生动的。下面的几篇博客我将对其中的23种设计模式进行详细讲解,这篇博客先简单列举一下23种设计模式的名字以及我对六大基本原则的简单理解。 创建型模式: 工厂方法模式 抽象工厂模式 原型模式 建造者模式 单例模式 结构型模式: 装饰模式 代理模式 适配器模式 享元模式 外观模式 组合模式 桥接模式 行为型模式: 策略模
设计模式的7原则及23种设计模式概要
一、设计模式的原则 1.开放封闭原则 2.依赖倒置原则 3.迪米特法则 4.单一职责原则 5.接口隔离原则 6.有限原则(有先使用组合而不是继承) 7.里氏替换原则 二、23种设计模式 1.创建型模式:用来处理对象的创建过程 (1)单例模式(Single Pattern) (2)工厂模式(Factory Pattern) (3)抽象工厂模式(Factory Pattern)
设计模式--六大原则与三种类型
一.6大原则 1.单一职责原则(Single Responsibility Principle) 定义:就一个类而言,应该仅有一个引起它变化的原因;     如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责变化可能会消弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏;     T负责两个不同的职责:职责P1,职责P2。当由
23种设计模式-设计模式六大原则
单一职责原则(Single Responsibility Principle) 定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来:类T负责两个不同的职责:职责P1,职责P2。当由于职责P1需求发生改变而需要修改类T时,有可能会导致原本运行正常的职责P2功能发生故障。 解决方案:遵循单一职责原则。分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责
JAVA的23种设计模式---前置:6大基本原则
概要:该文章参考了《设计模式之禅》一书、百度百科及一些前辈的博客文章 1.该文章阐述了JAVA的6大基本原则; 2.该文章适合初学设计模式的技术人员研习; 3.该文章有许多不足之处,请各位大咖指正,喷子绕道;
23种设计模式及6大原则
23种设计模式及6大原则一.设计模式分类总体来说设计模式分为三大类: 创建型模式 工厂方法模式 抽象工厂模式 单例模式 建造者模式 原型模式 结构型模式 适配器模式 装饰器模式 代理模式 外观模式 桥接模式 组合模式 享元模式 行为型模式 策略模式 模板方法模式 观察者模式 迭代子模式 责任链模式 命令模式 备忘录模式 状态模式 访问者模式 中介者模式
学习6大设计原则、23种设计模式
        了解设计模式的朋友们,想必都听说过“六大设计原则”吧。其实最经典的 23 种设计模式中或多或少地都在使用这些设计原则,也就是说,设计模式是站在设计原则的基础之上的。所以在学习设计模式之前,很有必要对这些设计原则先做一下了解。1、单一职责原则There should never be more than one reason for a class to change.理解:不同的类...
23种设计模式(概念、原则、场景、优点、缺点、应用)简述
23种设计模式:简单工厂模式,策略模式、装饰模式、代理模式、工厂方法模式、原型模式、模板方法模式、外观模式、建造者模式、观察者模式、抽象工厂模式、状态模式、适配器模式、备忘录模式、组合模式、迭代器模式、单例模式、桥接模式、命令模式、职责链模式、中介者模式、享元模式、解释器模式、访问者模式。
个人对23种设计模式总结 优缺点分析
在看了《大话设计模式》一书后,总结了一些笔记,如下: 关于设计模式的总结 1.抽象工厂: Factory 提供一个创建一系列或相关依赖对象的接口,而无需指定他们具体的类。针对多级结构. 抽象工厂模式除了具有工厂方法模式的优点外,最主要的优点就是可以在类的内部对产品族进行约束。  产品族的扩展将是一件十分费力的事情,假如产品族中需要增加一个新的产品,  则
23种设计模式(13):适配器模式
本文主要介绍设计模式中的适配器模式。