当前位置: 首页 > news >正文 第六节第二部分:抽象类的应用-模板方法设计模式 news 2025/5/14 5:33:54 模板方法设计模式的写法 建议使用final关键字修饰模板方法 总结 代码: People(父类抽象类) package com.Abstract3; public abstract class People {/*设计模板方法设计模式* 1.定义一个模板方法出来*/public final void write(){System.out.println("\t\t\t\t\t《我的上司》");System.out.println("\t\t我的上司好啊,牛逼啊,来看看我的上司有多牛逼");//2.模板方法并不清楚正文部分到底怎么去写,但是他知道子类肯定要去写System.out.println(writeMain());System.out.println("有这样的上司太好了");}//3.设计一个抽象方法写正文,具体实现交给子类完成public abstract String writeMain(); } Teacher(子类继承People类) package com.Abstract3;public class Teacher extends People{@Overridepublic String writeMain() {return "我的上司挺好的,让我待在这里别走,他去买点橘子";} } Student类(子类继承People类) package com.Abstract3; public class Student extends People {@Overridepublic String writeMain() {return "我的上司特别牛逼,开车不看红绿灯,下辈子让他做下属";} } Test类(主函数所在) package com.Abstract3; //搞清楚抽象类的应用场景,用来设计模板方法设计模式 //场景:学生、老师都要写一篇作文:我的上司 //第一段:一样 //正文部分自由发挥 //最后一段也是一样 public class Test {public static void main(String[] args) {Teacher t = new Teacher();t.write();Student s = new Student();s.write();} } 查看全文 http://www.xdnf.cn/news/417871.html 相关文章: vim 练习题 苍穹外卖--新增菜品 按键精灵ios脚本新增元素功能助力辅助工具开发(一) 机器学习07-归一化与标准化 mybatis中${}和#{}的区别 【RabbitMQ】工作队列和发布/订阅模式的具体实现 微服务八股(自用) React Native告别图标体积大手动更换慢的噩梦:让图标更新像修改文字一样简单 聊一聊Electron中Chromium多进程架构 数据结构day1 使用 IntelliJ IDEA 和 Maven 创建 Spark 项目 云原生|kubernetes|kubernetes的etcd集群备份策略 高防服务器部署实战:从IP隐匿到协议混淆 Scala和Go差异 【面试 · 三】react大集合(类式/函数式) 需求与技术实现不匹配,如何协调 【 Redis | 实战篇 秒杀实现 】 在虚拟机Ubuntu18.04中安装NS2教程及应用 Spark SQL 读取 CSV 文件,并将数据写入 MySQL 数据库 niushop单商户V5多门店版V5.5.0全插件+商品称重、商家手机端+搭建环境教程 Unity引擎源码-物理系统详解-其一 centos中libc.so.6No such file的解决方式 AI+企业应用级PPT生成(实战) 初识XML 软件测试(概念1) 使用CAS操作实现乐观锁的完整指南 C++的历史与发展 原创-业务接口数据监控 MyBatis-Plus的批量插入与原生JDBC效率对比 git 怎么更改本地的存储的密码
模板方法设计模式的写法 建议使用final关键字修饰模板方法 总结 代码: People(父类抽象类) package com.Abstract3; public abstract class People {/*设计模板方法设计模式* 1.定义一个模板方法出来*/public final void write(){System.out.println("\t\t\t\t\t《我的上司》");System.out.println("\t\t我的上司好啊,牛逼啊,来看看我的上司有多牛逼");//2.模板方法并不清楚正文部分到底怎么去写,但是他知道子类肯定要去写System.out.println(writeMain());System.out.println("有这样的上司太好了");}//3.设计一个抽象方法写正文,具体实现交给子类完成public abstract String writeMain(); } Teacher(子类继承People类) package com.Abstract3;public class Teacher extends People{@Overridepublic String writeMain() {return "我的上司挺好的,让我待在这里别走,他去买点橘子";} } Student类(子类继承People类) package com.Abstract3; public class Student extends People {@Overridepublic String writeMain() {return "我的上司特别牛逼,开车不看红绿灯,下辈子让他做下属";} } Test类(主函数所在) package com.Abstract3; //搞清楚抽象类的应用场景,用来设计模板方法设计模式 //场景:学生、老师都要写一篇作文:我的上司 //第一段:一样 //正文部分自由发挥 //最后一段也是一样 public class Test {public static void main(String[] args) {Teacher t = new Teacher();t.write();Student s = new Student();s.write();} }