当前位置: 首页 > news >正文

设计模式-模板模式

一、所用到的类

一个抽象类:里面都是固定的方法,然后外加一个调用这些固定流程方法的方法
N个实现类:这些实现类去实现固定的那些方法

二、代码实现

抽象类

public abstract class OneDay {abstract void getup ();abstract void eat ();abstract void sleep ();public void start () {getup();eat();sleep();}
}

实现类1

public class JayOneDay extends OneDay{@Overridevoid getup() {System.out.println("Jay get up");}@Overridevoid eat() {System.out.println("Jay eat");}@Overridevoid sleep() {System.out.println("Jay sleep");}
}

实现类2

public class TimOneDay extends OneDay{@Overridevoid getup() {System.out.println("Tim OneDay getup");}@Overridevoid eat() {System.out.println("Tim OneDay eat");}@Overridevoid sleep() {System.out.println("Tim OneDay sleep");}
}

调用类

@SpringBootApplication
public class TemplateApplication {public static void main(String[] args) {OneDay oneDay = new JayOneDay();oneDay.start();oneDay = new TimOneDay();oneDay.start();}
}

三、总结

模板模式适用于对一个流程进行封装,这个流程中可能会有多种行为。

http://www.lqws.cn/news/590689.html

相关文章:

  • Linux驱动学习day12(mmap)
  • 道可云人工智能每日资讯|浦东启动人工智能创新应用竞赛
  • 业界优秀的零信任安全管理系统产品介绍
  • 从0开始学习R语言--Day35--核密度动态估计
  • ABB PPD 113 B03-23-100110 3 bhe 023584 r 2334 AC 800 pec控制系统
  • 腾讯 iOA 零信任产品:安全远程访问的革新者
  • ASP.NET代码审计 MVC架构 SQL注入漏洞
  • LINUX2.6设备注册与GPIO相关的API
  • 将N8N配置为服务【ubuntu】
  • 第4课:Flask请求与响应对象深度解析
  • 使用mavros启动多机SITL仿真
  • WPF学习笔记(17)样式Style
  • Coze(扣子):基础学习
  • 利用视觉-语言模型搭建机器人灵巧操作的支架
  • 【Docker基础】Docker数据卷:数据卷的作用与使用场景
  • 算法-每日一题(DAY12)最长和谐子序列
  • Salesforce Accountアクションボタン実装ガイド
  • 简单聊聊 Flutter 在鸿蒙上为什么可以 hotload ?
  • 飞算JavaAI—AI编程助手 | 编程领域的‘高科技指南针’,精准导航开发!
  • 具身多模态大模型在感知与交互方面的综述
  • sqlmap学习ing(2.[第一章 web入门]SQL注入-2(报错,时间,布尔))
  • rocketmq 之 阿里云转本地部署实践总结
  • Vue3 中 Excel 导出的性能优化与实战指南
  • 创建和连接Vue应用程序实例
  • 缓存系统-淘汰策略
  • 强化学习系列--dpo损失函数
  • 齿轮的齿厚极限偏差如何确定?一起学习一下
  • C++基础
  • 目前最火的agent方向-A2A快速实战构建(二): AutoGen模型集成指南:从OpenAI到本地部署的全场景LLM解决方案
  • 《Python 架构之美:三大设计模式实战指南》