模本方法模式
一、作用:将不变的行为搬到超类,去除子类中的重复代码,不变的行为放在超类中,变的地方放到实现类中。
二、定义:定义一个操作中算法的骨架,将一些步奏延迟到子类中。
三、类图:
四、实现:
1、超类 公用的实现和虚方法
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class PaperOne extends TestPaper { @Override public void answer() { System.out.println("sun shisong"); } }
2、实现类,实现超类的虚方法
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class PaperOne extends TestPaper { @Override public void answer() { System.out.println("sun shisong"); } } public class PaperTwo extends TestPaper { @Override public void answer() { System.out.println("yang piao"); } }
3、测试类
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public class Client { public static void main(String[] args) { TestPaper one = new PaperOne(); one.question(); TestPaper two = new PaperTwo(); two.question(); } }