您的位置:首页 > 编程语言 > Java开发

Java--设计模式之模板方法模式

2013-12-16 16:16 519 查看
模板方法模式,定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。

我们来看一个考试试卷答题的例子。

1、考试试卷public abstract class TestPager {
public void testQuestion1(){
System.out.println("杨过得到,后来给了郭靖,练成倚天剑、屠龙刀的玄铁可能是[]a.球磨铸铁 b.马口铁 c.告诉合金钢 d.碳素纤维");
System.out.println("答案"+answer1());
}
public void testQuestion2(){
System.out.println("杨过、程英、陆无双铲除了情花,造成[]a.使这种植物不再害人 b.使一种珍惜物种灭绝 c.破坏了那个生物圈的生态平衡 d.造成该地区沙漠化");
System.out.println("答案"+answer2());
}
public abstract String answer1();
public abstract String answer2();
}2、学生A抄写的试卷
public class TestPagerA extends TestPager{

@Override
public String answer1() {
return "a";
}

@Override
public String answer2() {
return "b";
}

}
3、学生B抄写的试卷
public class TestPagerB extends TestPager{

@Override
public String answer1() {
return "c";
}

@Override
public String answer2() {
return "d";
}

}
4、测试
public class Test {
public static void main(String[] args) {
System.out.println("学生A的试卷");
TestPager studentA = new TestPagerA();
studentA.testQuestion1();
studentA.testQuestion2();
System.out.println("学生B的试卷");
TestPager studentB = new TestPagerB();
studentB.testQuestion1();
studentB.testQuestion2();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息