设计模式学习笔记
2013-06-18 17:52
183 查看
模板方法模式
适用于执行步骤雷同(方法调用流程一样,但具体到某个方法内部,有的一样,有的不一样)。例如泡茶和泡咖啡 ,二者都是饮料的子类。操作步骤都是:先烧开水,然后加入茶叶或咖啡。
抽象父类{
主模板方法(由父类负责实现){
具体方法1
抽象方法1
}
具体方法1//父类层次实现子类直接使用 {
}
抽象方法1; //父类声明,由子类分别实现不同细节
}
子类1{
实现抽象方法1
}
子类2{
实现抽象方法1
}
概括起来就是,
父类中定义模板方法,用于对模板流程每个方法的调用,父类实现子类中共同的细节,子类中实现父类中声明但因子类而不同的细节。
使用后的好处是
以后可以很轻松的加入其它饮料,只要与冲泡咖啡的算法步骤相同。由父类掌控算法本身,易于修改,子类只提供具体实现。
经典定义是
模板方法模式:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。
其实还有更多,后面再完善。
适用于执行步骤雷同(方法调用流程一样,但具体到某个方法内部,有的一样,有的不一样)。例如泡茶和泡咖啡 ,二者都是饮料的子类。操作步骤都是:先烧开水,然后加入茶叶或咖啡。
抽象父类{
主模板方法(由父类负责实现){
具体方法1
抽象方法1
}
具体方法1//父类层次实现子类直接使用 {
}
抽象方法1; //父类声明,由子类分别实现不同细节
}
子类1{
实现抽象方法1
}
子类2{
实现抽象方法1
}
概括起来就是,
父类中定义模板方法,用于对模板流程每个方法的调用,父类实现子类中共同的细节,子类中实现父类中声明但因子类而不同的细节。
使用后的好处是
以后可以很轻松的加入其它饮料,只要与冲泡咖啡的算法步骤相同。由父类掌控算法本身,易于修改,子类只提供具体实现。
经典定义是
模板方法模式:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。
其实还有更多,后面再完善。
相关文章推荐
- 《企业集成模式.设计、构建及部署消息传递解决方案》学习笔记
- java设计模式学习笔记-构建模式
- 设计模式学习笔记-观察者模式
- 设计模式学习笔记--简单工厂模式(Simple Factory Pattern)【创建型模式】
- 设计模式学习笔记--组合实体模式
- OpenCV 2 学习笔记(12): 算法的基本设计模式<3>:单例模式(Singleton pattern)
- 设计模式学习笔记---工厂模式(Java版)
- PetShop3.x学习笔记8-《PetShop 3.x的设计模式与体系结构》节选-数据库可移植性
- 设计模式之Builder 的学习笔记
- 步步为营 .NET 设计模式学习笔记 十四、Decorator(装饰模式)
- 设计模式学习笔记(1)之单例模式
- .Net设计模式学习笔记(二):单件模式(Singleton Pattern)
- 设计模式学习笔记(一)——面向对象设计模式与原则
- 设计模式学习笔记--构建者模式
- 设计模式学习笔记-外观模式
- Header First设计模式学习笔记——装饰器模式
- 步步为营 .NET 设计模式学习笔记 九、Command(命令模式)
- 设计模式学习笔记--装饰(Decorator)模式
- 学习Java 23种设计模式详解笔记之结构型模式(二)
- 设计模式学习笔记之观察者模式