设计模式之模版模式

简介: 设计模式之模版模式

模版模式:模版模式是比较容易理解的设计模式之一,其实就是做一个模版,然后具体每个人在根据模版进行编写。

日常生活中,英语考试,作文有各种各样的模版,我们照搬模版,填充内容就可以了。

考试的时候,每个人试卷都一样,但是答题不一样。

案例

模版类

public abstract class Paper {
    public void question1() {
        System.out.println("1+1=?");
    }
    public abstract void answer1();
}

具体学生a的试卷

public class StudentA extends Paper{
    @Override
    public void answer1() {
        System.out.println("2");
    }
}

具体学生b的试卷

public class StudentB extends Paper{
    @Override
    public void answer1() {
        System.out.println("3");
    }
}

优缺点

优点:

封装不变部分,扩展可变部分
提取公共部分代码,便于维护
行为由父类控制,子类实现

缺点:

每一个不同的实现都需要一个子类实现,导致类的个数增加,使得系统更加庞大

源码体现

可以参考该篇:https://blog.csdn.net/CSDN_WYL2016/article/details/121235087?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1.pc_relevant_default&utm_relevant_index=2

相关文章
|
19天前
|
设计模式 SQL 算法
设计模式了解哪些,模版模式
设计模式了解哪些,模版模式
19 0
|
1月前
|
设计模式 Java uml
C++设计模式之 依赖注入模式探索
C++设计模式之 依赖注入模式探索
37 0
|
15天前
|
设计模式 Java 数据库
小谈设计模式(2)—简单工厂模式
小谈设计模式(2)—简单工厂模式
|
3天前
|
设计模式 存储 JavaScript
[设计模式Java实现附plantuml源码~创建型] 多态工厂的实现——工厂方法模式
[设计模式Java实现附plantuml源码~创建型] 多态工厂的实现——工厂方法模式
|
3天前
|
设计模式 Java Go
[设计模式Java实现附plantuml源码~创建型] 集中式工厂的实现~简单工厂模式
[设计模式Java实现附plantuml源码~创建型] 集中式工厂的实现~简单工厂模式
|
5天前
|
设计模式
设计模式(一)简单工厂模式
设计模式(一)简单工厂模式
13 0
|
15天前
|
设计模式 Java
小谈设计模式(9)—工厂方法模式
小谈设计模式(9)—工厂方法模式
|
1月前
|
设计模式 编译器
解析器模式--设计模式
解析器模式--设计模式
19 0
|
1月前
|
设计模式 算法
构建器模式--设计模式
构建器模式--设计模式
18 0
|
1月前
|
设计模式
【设计模式】中介模式
【设计模式】中介模式