`
liuxinglanyue
  • 浏览: 561929 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Java设计模式之模板方法模式

阅读更多

TEMPLATE METHOD (Class Behavioral) 
Purpose 
Identifies the framework of an algorithm, allowing implementing 
classes to define the actual behavior. 
Use When 
1 A single abstract implementation of an algorithm is needed. 
2 Common behavior among subclasses should be localized to a 
  common class. 
3 Parent classes should be able to uniformly invoke behavior in 
   their subclasses. 
4 Most or all subclasses need to implement the behavior. 
Example 
A parent class, InstantMessage, will likely have all the methods 
required to handle sending a message. However, the actual 
serialization of the data to send may vary depending on the 
implementation. A video message and a plain text message 
will require different algorithms in order to serialize the data 
correctly. Subclasses of InstantMessage can provide their 
own implementation of the serialization method, allowing the 
parent class to work with them without understanding their 
implementation details. 

Java代码 
  1. package javaPattern.templateMethod;  
  2.   
  3.   
  4. abstract class AbstractClass{  
  5.     public void templateMethod(){  
  6.         subMethod1();  
  7.         subMethod2();  
  8.     }  
  9.     public abstract void subMethod1();  
  10.     public abstract void subMethod2();  
  11. }  
  12. class ConcreteClassA extends AbstractClass{  
  13.   
  14.     @Override  
  15.     public void subMethod1() {  
  16.         System.out.println("具体类A的方法1");  
  17.           
  18.     }  
  19.   
  20.     @Override  
  21.     public void subMethod2() {  
  22.         System.out.println("具体类A的方法2");  
  23.           
  24.     }  
  25.       
  26. }  
  27. class ConcreteClassB extends AbstractClass{  
  28.   
  29.     @Override  
  30.     public void subMethod1() {  
  31.         System.out.println("具体类B的方法1");  
  32.           
  33.     }  
  34.   
  35.     @Override  
  36.     public void subMethod2() {  
  37.         System.out.println("具体类B的方法2");  
  38.           
  39.     }  
  40.       
  41. }  
  42. public class TemplateMethod {  
  43.   
  44.     public static void main(String[] args) {  
  45.         AbstractClass ac ;  
  46.         ac = new ConcreteClassA();  
  47.         ac.templateMethod();  
  48.         ac = new ConcreteClassB();  
  49.         ac.templateMethod();  
  50.     }  
  51. }  

分享到:
评论

相关推荐

    Java设计模式之模板方法模式Java认证考试.pdf

    Java设计模式之模板方法模式Java认证考试 Java设计模式之模板方法模式是Java认证考试中的一种重要的设计模式,它通过使用继承关系来定义一个操作中的算法骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个...

    Java设计模式之模板方法模式.rar

    模板方法模式是面向对象设计模式中的行为模式之一,它在Java编程中有着广泛的应用。这种模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定...

    Java设计模式之模板方法模式.docx

    总结来说,模板方法模式是Java设计模式中的一种常见模式,用于定义算法的结构,并允许子类在不改变整体结构的情况下重定义某些步骤。在这个悍马模型的例子中,通过调整`run()`方法的实现位置,可以更好地体现模板...

    java设计模式之模板方法模式详解

    "java设计模式之模板方法模式详解" 模板方法模式是一种行为设计模式,主要用于定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。...

    设计模式之模板方法模式

    模板方法模式是面向对象设计模式中的行为模式之一,它在Java等面向对象编程语言中有着广泛的应用。模板方法模式的主要思想是在一个抽象类中定义一个算法的骨架,而将一些步骤延迟到子类中实现。这样,子类可以重写...

    java设计模式之模板模式

    在Java设计模式之模板模式中,我们将深入探讨这种模式的原理、应用场景以及如何在实际编码中实现。 模板模式的核心在于抽象类,这个抽象类定义了一个操作中的算法骨架,而将一些具体步骤的实现延迟到其子类中。这样...

    设计模式--模板方法模式java例子

    模板方法模式是设计模式中行为型模式的一种,它在软件工程中扮演着非常重要的角色,尤其是在Java编程中。模板方法模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。它允许子类不改变一个算法的结构即可重...

    java设计模式-模板模式

    模板模式是一种行为设计模式,它在面向对象编程中扮演着重要的角色。此模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。这样,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤...

    Java 经典设计模式讲解以及项目实战

    Java 经典设计模式讲解以及项目实战 设计模式简介:主要介绍各种设计模式的概念和运用场景等 设计模式综合运用:主要是笔者在实际工作中运用到的一些设计模式综合运用事例的提炼 Spring设计模式简介:主要是讲述...

    JAVA设计模式(java设计)

    Java设计模式是面向对象编程领域中的重要概念,它是一套被广泛接受并实践的解决软件设计问题的经验总结。设计模式并非具体的代码或库,而是一种在特定情境下为了解决常见问题而制定的通用解决方案的描述。它们描述了...

    《Java设计模式》刘伟 课后习题及模拟试题答案.rar

    《Java设计模式》是刘伟老师的一本经典教材,它深入浅出地讲解了软件设计中的重要概念——设计模式。设计模式是经验丰富的开发者在解决常见问题时总结出的通用解决方案,是软件开发中的智慧结晶。这本书的课后习题和...

    设计模式之模板方法模式Java实现和类设计图

    模板方法模式是软件设计模式中的一种行为模式,它在面向对象设计中扮演着重要的角色,尤其是在代码复用和保持代码结构整洁方面。该模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。使得子类可以不改变一...

    Java设计模式26模板方法模式.pdf

    ### Java设计模式26模板方法模式 #### 模式动机 模板方法模式是基于继承机制的一种代码复用技术,它允许子类通过扩展的方式重写父类中的抽象方法,以此来实现不同子类间的差异性行为。在软件工程中,我们经常遇到...

    Java设计模式之禅

    《Java设计模式之禅》是一本深入浅出讲解设计模式的书籍,书中不仅包含23种经典设计模式的案例,还详细介绍了设计模式背后的思想和原则,适合初学者以及对设计模式有一定了解的程序员阅读。本书旨在帮助读者理解如何...

    java设计模式之策略模式与模板模式

    在Java编程领域,设计模式是解决常见问题的可重用解决方案,它们代表了软件设计的最佳实践。本篇文章将深入探讨两种重要的设计模式:策略模式和模板模式。通过理解这两种模式,开发者可以更好地组织代码,提高代码的...

    java版本的设计模式的实现demo

    在Java编程中,运用合适的设计模式可以提高代码的可维护性、可扩展性和可复用性。以下是关于Java版本设计模式实现demo的一些补充说明: 1. 设计模式分类 设计模式通常分为三大类:创建型模式、结构型模式和行为型模式...

    java设计模式ppt

    ### Java设计模式详解 在软件开发领域,设计模式是一种被广泛采用的解决方案,用来解决常见的设计问题。设计模式不仅能够帮助开发者写出可复用、可维护的代码,还能提高团队间的沟通效率。以下是对给定文件中提到的...

Global site tag (gtag.js) - Google Analytics