您的位置:首页 > 其它

设计模式-模板方法

2015-10-26 15:59 363 查看

1.定义

定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。

2.UML






3.代码

public abstract class AbstractTemplate {

abstract void doSomething();

abstract void doAnything();

void templateMethod() {
doSomething();
doAnything();
}
}


public class ConcreteTemplate1 extends AbstractTemplate {
@Override
void doSomething() {
}
@Override
void doAnything() {
}
}

public class ConcreteTemplate2 extends AbstractTemplate {
@Override
void doSomething() {
}
@Override
void doAnything() {
}
}

public class Client {
public static void main(String[] args) {
AbstractTemplate template1 = new ConcreteTemplate1();
template1.templateMethod();
AbstractTemplate template2 = new ConcreteTemplate2();
template2.templateMethod();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: