码迷,mamicode.com
首页 > 编程语言 > 详细

java 之 模板模式(大话设计模式)

时间:2017-11-29 18:22:37      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:ext   重复   rac   es2017   严格   col   编写程序   帮助   很多   

模板模式,我们很多人都用过,而且大家都比较喜欢这个模式,先看一下类图

大话设计模式-类图

技术分享图片

作为一个程序员,不懂得“偷懒“,在笔者看来不是很合格哦!当我们编写程序时,发现很多个类所走的流程基本一致,只是少部分差异,这时我们就需要考虑模板模式,来减少重复代码,这样做的好处,不仅仅减少了代码,而且对于主体流程的管控,也是比较严格。

看下demo:

/**
 * 抽象父类
 */
public abstract class AbstractProblem {

    public void tempProblem() {
        answerA();
        answerB();
        System.out.println("结束");
    }

    public abstract void answerA();

    public abstract void answerB();
}
/**
 * 学生1
 */
public class Student1 extends AbstractProblem {

    @Override
    public void answerA() {
        System.out.println("A");
    }

    @Override
    public void answerB() {
        System.out.println("A");
    }
}
/**
 * 学生2
 */
public class Student2 extends AbstractProblem {

    @Override
    public void answerA() {
        System.out.println("D");
    }

    @Override
    public void answerB() {
        System.out.println("D");
    }
}
/**
 * 客户端
 */
public class Test {

    public static void main(String[] args) {
        Student1 st1 = new Student1();
        st1.tempProblem();

        Student2 st2 = new Student2();
        st2.tempProblem();
    }
}

输出结果:

A
A
结束
D
D

到现在为止,笔者已经看了很多次设计模式,第一次看设计模式时,看每一个模式都需要很认真的思考几次,才能明白其精髓所在,并思考这个设计模式可以优化现有的哪些代码,

不过当笔者看到这个设计模式时,忽然意识到,原来我一直在使用这个模板设计模式。

以上是笔者对模板模式的理解,希望能帮助学习的小伙伴!共同进步!

java 之 模板模式(大话设计模式)

标签:ext   重复   rac   es2017   严格   col   编写程序   帮助   很多   

原文地址:http://www.cnblogs.com/zhuxiansheng/p/7921602.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!