模板方法设计模式

模板方法设计模式优势

解决方法中存在重复代码的问题

模板方法设计格式

1.定义一个抽象类

2.在里边定义两个方法,一个是模板方法,放在相同的代码里,一个是抽象方法;具体实现交给子类完成

3.模板方法建议使用final 关键字修饰,防止方法被修改

定义的抽象类

java 复制代码
//抽象类
public abstract class TestAbstract {

    //姓名
    public abstract void name();
    //班级
    public abstract void classAndGrade();




    //行为
    public final void behavior(){
        System.out.println("我是光明小学学生");
        name();
        classAndGrade();
        System.out.println("我是我爱我的学校");
    }

子类继承抽象类

java 复制代码
public class TestAbstract1 extends TestAbstract{
    @Override
    public void name() {
        System.out.println("我叫张三");
    }

    @Override
    public void classAndGrade() {
        System.out.println("我是三年级二班");
    }
}

方法执行的是父类封装好的模板方法

java 复制代码
        TestAbstract1 testAbstract1 = new TestAbstract1();
        testAbstract1.behavior();

运行效果

相关推荐
susu108301891144 分钟前
android studio使用DataBinding
android·ide·android studio
太阳伞下的阿呆2 小时前
CentOS 8 如何安装java与mysql
java·mysql·centos
草莓屁屁不酸3 小时前
积分与签到设计
java·redis·微服务·rabbitmq
aaajj6 小时前
【Android】直接使用binder的transact来代替aidl接口
android·binder
&岁月不待人&6 小时前
Android切换语言不退出App
android
苹果酱05676 小时前
Golang的文件加密技术研究与应用
java·vue.js·spring boot·mysql·课程设计
一化十7 小时前
Android 来电白名单 只允许联系人呼入电话
android
&岁月不待人&7 小时前
Android 判断RecyclerView是否滚动到底部
android
xweiran8 小时前
CAS操作的底层原理(总线锁定机制和缓存锁定机制 )
java·cas·处理器·总线锁定·缓存锁定