第六节第二部分:抽象类的应用-模板方法设计模式

模板方法设计模式的写法

建议使用final关键字修饰模板方法

总结

代码:

People(父类抽象类)

java 复制代码
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类)

java 复制代码
package com.Abstract3;

public class Teacher extends People{
    @Override
    public String writeMain() {
        return "我的上司挺好的,让我待在这里别走,他去买点橘子";
    }
}

Student类(子类继承People类)

java 复制代码
package com.Abstract3;
public class Student extends People {
    @Override
    public String writeMain() {
        return "我的上司特别牛逼,开车不看红绿灯,下辈子让他做下属";
    }
}

Test类(主函数所在)

java 复制代码
package com.Abstract3;
//搞清楚抽象类的应用场景,用来设计模板方法设计模式
//场景:学生、老师都要写一篇作文:我的上司
//第一段:一样
//正文部分自由发挥
//最后一段也是一样
public class Test {
    public static void main(String[] args) {
        Teacher t = new Teacher();
        t.write();
        Student s = new Student();
        s.write();

    }
}
相关推荐
222you1 分钟前
JUC当中的几个计数类
java·开发语言
xdl25994 分钟前
如何快速搭建简单SpringBoot项目网页
java·spring boot·intellij-idea
k-l.11 分钟前
【通过jdbc连接到kingbase数据库插入10w数据】
java·数据库
毕设源码-朱学姐13 分钟前
【开题答辩全过程】以 基于java的书店用户管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
gis分享者18 分钟前
华为OD面试-Java、C++、Pyhton等多语言实现-目录
java·c++·华为od·面试·目录·od·机试
肖。354878709420 分钟前
[技巧-11]AndroidManifest.xml完善小技巧。
android
于先生吖22 分钟前
2026 新版上门回收系统源码 JAVA 同城服务平台搭建指南
java·开发语言
MX_935931 分钟前
Spring整合Web环境实现思路
java·开发语言·后端·spring
Darkdreams35 分钟前
总结 Spring 注入 bean 的四种方式
java·后端·spring
小羊子说36 分钟前
Android 车机开发中常用的adb 脚本(更新中)
android·linux·adb·性能优化·车载系统