模版模式

作者: 78f6ced3a012 | 来源:发表于2019-06-01 15:25 被阅读0次

概述:抽象类定义了执行的方式(一系列步骤或者逻辑,方案,就是一个模子),子类可以重写父类的具体实现,但执行还是要使用父类的定义。

代码:定义一个下班回家的模版(离开公司,在路上,到家开门)

package com.example.java8.model.template;

/**
 * 模版模式
 * 功能:回家(离开公司--》在路上--》开门)
 */
public abstract class GoHomeTemplate {

    /**模版方法(加final避免重写)*/
    public final void exec(){
        this.leaveCompany();
        this.onTheWay();
        this.openDoor();
    }

    /**离开公司*/
    public abstract void leaveCompany();

    /**在路上*/
    public abstract void onTheWay();

    /**开门*/
    public abstract void openDoor();

}

A方法的实现模版

package com.example.java8.model.template;

public class AMethod extends GoHomeTemplate {
    @Override
    public void leaveCompany() {
        System.out.println("走电梯");
    }

    @Override
    public void onTheWay() {
        System.out.println("坐地铁");
    }

    @Override
    public void openDoor() {
        System.out.println("刷门禁卡");
    }
}

B方法的实现模版

package com.example.java8.model.template;

public class BMethod extends GoHomeTemplate {
    @Override
    public void leaveCompany() {
        System.out.println("走楼梯");
    }

    @Override
    public void onTheWay() {
        System.out.println("开小车");
    }

    @Override
    public void openDoor() {
        System.out.println("钥匙开门");
    }
}

测试

package com.example.java8.model.template;

import org.junit.Test;

public class TemplateTest {

    @Test
    public void testA(){
        GoHomeTemplate aMethod = new AMethod();
        aMethod.exec();
    }

    @Test
    public void testB(){
        GoHomeTemplate bMethod = new BMethod();
        bMethod.exec();
    }

}

相关文章

  • 设计模式-模版方法模式

    设计模式-模版方法模式 定义 模版方法模式(Template Method Pattern)又叫模版模式,是指定义...

  • 设计模式[14]-模版方法模式-Template Method

    1.模版方法模式简介 模版方法模式(Template Method Pattern)是行为型(Behavioral...

  • 设计模式之模版方法模式

    模版方法模式 模版方法是一种只需使用继承就可以实现的非常简单的模式模版方法模式由两部分结构组成,第一部分是抽象父类...

  • 设计模式之模版方法模式

    模版方法模式 模版方法是一种只需使用继承就可以实现的非常简单的模式模版方法模式由两部分结构组成,第一部分是抽象父类...

  • 模版方法模式

    模版方法模式 一、什么是模版方法模式 模板模式 :解决某类事情的步骤有些是固定的,有些是会发生变化的,那么这时候我...

  • 设计模式之Template模式(模版模式)

    1 模式简介 1.1 模版方法模式的定义:模版方法模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模...

  • 模版方法模式

    通俗讲,模版模式就是将通用的上升到父类中,个性化的功能由各个子类完成.代码的复用是模版模式主要解决的.

  • 模版模式

    类图 模版模式.png 实现 调用 输出 把某东西装进冰箱的类 把大象装冰箱 把苹果装冰箱 The Templat...

  • 模版方法模式

    模版方法模式 定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算...

  • 模版方法模式

网友评论

    本文标题:模版模式

    本文链接:https://www.haomeiwen.com/subject/lkhatctx.html