一、前言
以前只知道抽象类与接口的区别,而不知道为什么会有这样的区别,看了模板模式的例子算是知其所以然了。
二、结构图
三、应用场景
比如说生成手机,生产的流程是相同的,但是具体的细节可能有所不同(比如手机的颜色,手机的类别,手机的大小等等)。
package TemplateDemo;
/**
* 这是一个抽象的模板类
* */
abstract class AbstractClass {
//定义一个模板方法来控制生产手机的流程
public void makeMobile(){//TemplateMethod
//首先生产手机体(模板方法自己完成)
System.out.println("生产了一个手机body");
this.makeDifferentFunction();
this.makeDifferentColor();
this.makeDifferentType();
System.out.println("一部手机制作完成");
//以上模板已经规定好了
}
//定义抽象的方法来完成不同的生产细节(不同功能的手机)
protected abstract void makeDifferentFunction();
//定义抽象的方法来完成不同的生产细节(不同颜色的手机)
protected abstract void makeDifferentColor();
//定义抽象的方法来完成不同的生产细节(不同类型的手机)
protected abstract void makeDifferentType();
}
/**
* 创建真是的实现类来实现具体的生产细节
* */
class ConcreteClass extends AbstractClass{
//实现父类中的抽象的方法
protected void makeDifferentColor() {
System.out.println("给该手机的颜色涂成蓝色");
}
protected void makeDifferentFunction() {
System.out.println("给该手机实现看MP4的功能");
}
protected void makeDifferentType() {
System.out.println("给该手机制作成翻盖的");
}
}
//写测试类
public class TestTemplate{
public static void main(String args[]){
AbstractClass ac = new ConcreteClass();//子类的对象付给父类
ac.makeMobile();//制作手机
//制作不同的手机只是修改子类就可以了
}
}
相关推荐
模板模式是一种行为设计模式,它在面向对象编程中扮演着重要的角色。这个模式定义了算法的骨架,并允许子类在不改变结构的情况下重定义某些步骤。模板方法模式遵循了“开闭原则”,即对扩展开放,对修改关闭,使得...
模板模式是一种行为设计模式,它在Java编程中扮演着重要的角色,主要用来定义算法的骨架,而将一些步骤延迟到子类中。这种模式让子类可以在不改变算法整体结构的情况下,重定义某些特定步骤。在Java设计模式之模板...
模板模式是一种设计模式,它属于行为设计模式,用于定义算法的骨架,并允许子类在不改变算法整体结构的情况下,自定义算法的某些特定步骤。在PHP中,模板模式的运用可以帮助我们实现代码的抽象和解耦,使得代码更加...
### 模板模式 (Template Pattern) #### 一、概述 模板模式是一种常用的行为设计模式,其核心在于定义了一个算法的框架,并允许子类提供具体的实现细节。通过这种方式,子类可以继承并重写某些方法,但整个算法的...
模板模式是一种行为设计模式,它使你能在不破坏封装性的前提下,定义对象间的一系列基本操作,并在子类中实现这些操作的具体步骤。在模板模式中,一个抽象类公开定义了执行它的方法的方式,而将具体实现延迟到子类中...
Java模板模式是一种设计模式,属于行为设计模式,它提供了一种在不同情况下重用相同算法结构的方法。在模板模式中,一个抽象类定义了算法的主要步骤,而这些步骤的实现则由其具体子类来完成。这样做的好处是能够封装...
模板模式是一种行为设计模式,它在面向对象编程中扮演着重要的角色。此模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。这样,模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤...
模板模式(Template Pattern)是行为设计模式的一种,属于GOF(Gang of Four)设计模式中的结构型模式。这种模式主要用于定义算法的骨架,它将一些步骤的实现延迟到子类中。模板方法使得子类可以在不改变算法结构的...
回调函数和模板模式都是软件设计中用于实现代码复用和扩展的重要工具,它们在不同的场景下各有优势。模板模式是一种行为设计模式,它定义了一组操作的算法骨架,同时允许子类在某些步骤中替换具体行为。而回调则是...
模板模式是一种行为设计模式,它使你能在代码中定义一个操作的不同步骤,并让子类决定这些步骤如何执行。模板模式提供了创建算法结构的通用接口,而具体的实现则由子类来完成。这种模式允许在不修改原有代码的情况下...
Java设计模式之模板模式及应用场景解析 Java设计模式中,模板模式是一种非常重要的设计模式,它通过抽象类来定义一个逻辑模板,逻辑框架、逻辑原型,然后将无法决定的部分抽象成抽象方法,留待子类来实现。模板模式...
Java模板模式是一种设计模式,属于行为模式类别,它在软件工程中扮演着重要的角色,尤其在构建可扩展和可复用的代码时。模板模式通过定义一个操作中的算法骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个...
模板模式 模板模式示例 在模板模式中,抽象类公开定义的方式/模板来执行其方法。 它的子类可以根据需要重写方法的实现,但是调用的方式应与抽象类所定义的方式相同。 此模式属于行为模式类别。 执行 我们将创建一个...
模板模式是一种行为设计模式,它使你能在代码中定义基本操作步骤,并允许子类在不改变整体结构的情况下重定义某些步骤。在Java编程中,模板模式是经常被用来实现代码复用和创建可扩展框架的基础。 模板模式的核心...
Java抽象类的构造模板模式用法示例 Java抽象类的构造模板模式用法示例是Java面向对象程序设计中的一种重要技术,通过抽象类和模板模式来实现更加灵活和可扩展的程序设计。本文将详细介绍Java抽象类的构造模板模式...
模板模式遵循“开闭原则”,即对扩展开放,对修改关闭。它通过定义一个操作中的算法框架,将具体步骤留给子类来实现。这种模式允许在不改动原有代码的情况下,通过继承来拓展功能,提高了代码的可复用性和可扩展性。...
模板模式是一种行为设计模式,它使你能在不破坏封装性的前提下,定义对象系列的算法族。这种模式在Java编程中广泛应用,可以帮助我们遵循“开闭原则”,即对扩展开放,对修改关闭。 模板模式的核心思想是定义一个...
模板方法模式是一种设计模式,属于行为模式类别,它在面向对象设计中扮演着重要的角色。该模式定义了一个操作中的算法骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的...