设计模式---模板方法模式

一、介绍

所谓模板方法模式,就是提供一种方法的模板来实现一种规范,其他人可以利用这个模板定义自己的逻辑。

在Java编程中的应用,主要就是通过接口或者抽象类来实现的,抽象类中可以把逻辑函数声明为final类型,表示不能被重写,即不能改变逻辑。在接口中定义一个模板方法,模板方法中调用接口中的其他方法,其他方法既可以提供默认实现,也可以不提供默认实现。当一个类实现这个接口的时候,就可以通过重写接口中的方法来实现自己的变成逻辑。

二、代码实例

接口:

java 复制代码
package code;

public interface myFirst {
    default void templete(){
        if(isTrue()){//如果判断成立,就执行逻辑1
            fun1();
        }
        fun2();
        fun3();
    }
    default void fun1(){
        System.out.println("逻辑1执行");
    }
    default void fun2(){
        System.out.println("逻辑2执行");
    }
    default void fun3(){
        System.out.println("逻辑3执行");
    }
    default boolean isTrue(){
        return true;//默认为true
    }
}
java 复制代码
package code;

public class myClass implements myFirst{
    @Override
    public void fun1() {
        System.out.println("我自己的实现1");
    }

    @Override
    public void fun2() {
        System.out.println("我自己的实现2");
    }

    @Override
    public void fun3() {
        System.out.println("我自己的实现3");
    }

    @Override
    public boolean isTrue() {
        return true;
    }
}
相关推荐
烤麻辣烫2 小时前
23种设计模式(新手)-9单例模式
java·开发语言·学习·设计模式·intellij-idea
资生算法程序员_畅想家_剑魔2 小时前
Java常见技术分享-设计模式的六大原则
java·开发语言·设计模式
刀法如飞2 小时前
从零手搓一个类Spring框架,彻底搞懂Spring核心原理
java·设计模式·架构设计
一条闲鱼_mytube3 小时前
智能体设计模式全景总结:21个模式快速串联指南
网络·设计模式
老蒋每日coding3 小时前
AI Agent 设计模式系列(十五)—— A2A Agent 间通信模式
人工智能·设计模式
Leo July4 小时前
【Java】Java设计模式实战指南:从原理到框架应用
java·开发语言·设计模式
老蒋每日coding6 小时前
AI Agent 设计模式系列(十四)—— 知识检索(RAG)模式
人工智能·设计模式·langchain
Yu_Lijing17 小时前
基于C++的《Head First设计模式》笔记——模式合作
c++·笔记·设计模式
S-X-S18 小时前
常用设计模式+集成websocket
websocket·设计模式
编程饭碗1 天前
【二十三种设计模式】
设计模式