码迷,mamicode.com
首页 > 其他好文 > 详细

入门设计模式之模板

时间:2018-06-30 23:41:48      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:分享图片   ati   targe   部分   syn   模板   alt   sim   print   

 

学习更多设计模式请参考:入门设计模式之汇总篇

 

模板方法:在一个抽象类中定义一部分的实现,其余的定义抽象方法迫使子类实现

 

相信看了上方的定义以后大家已经理解了模板模式,我们来看一下类图

 

 

技术分享图片

抽象类定义了4个方法,其中operation是私有的,在这个方法里调用了其他三个方法,而方法3是自己实现的。方法1和2是强迫子类实现的。

ClassImpl1,ClassImpl2都继承了抽象类,并分别对方法1和2进行了不同的实现

 

我们来看代码

public  abstract class AbstractClass {
    public abstract void operation1();
    public abstract void operation2();
    public  void operation3(){
        System.out.println("do something....");
    }
    public  void operation(){
        operation1();
        operation2();
        operation3();
    }
}

public class ClassImpl1 extends AbstractClass {
    @Override
    public void operation1() {
        System.out.println("do something....");
    }
    @Override
    public void operation2() {
        System.out.println("do something....");
    }
}

public class ClassImpl2 extends AbstractClass {
    @Override
    public void operation1() {
        System.out.println("do something....");
    }
    @Override
    public void operation2() {
        System.out.println("do something....");
    }
}

 




本文出自https://zhixiang.org.cn/#/blog/read/3291b51c-90fd-459b-9912-0eee2ff083f4,转载请保留。

入门设计模式之模板

标签:分享图片   ati   targe   部分   syn   模板   alt   sim   print   

原文地址:https://www.cnblogs.com/zhixiang-org-cn/p/9249000.html

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