常用设计模式

行为模式

模板模式

核心思想:在抽象类中定义抽象方法的执行顺序,并将抽象方法设定为只有子类实现

模版模式定义了统⼀的执行结构(或者说特定方法的执行顺序与逻辑),使得后续实现者不需要关心调用逻辑,只需要关注具体的业务逻辑实现即可。这样有利于开发的拓展与迭代

应用举例

Java中大名鼎鼎的 AQSAbstractQueueSynchronizer)就使用了模板模式的思想进行实现

思路实现

1、定义了抽象方法执行顺序逻辑的核心抽象类

1
2
3
4
5
6
7
8
9
10
11
12
public abstract class Template {
public void mainMethod() {
// 定义抽象方法执行逻辑
method1();
method2();
method3();
}

protected abstract void method1();
protected abstract void method2();
protected abstract void method3();
}

2、定义抽象方法的具体实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class Demo1 extends Template{

@Override
protected void method1() {
System.out.println("demo1 method1");
}

@Override
protected void method2() {
System.out.println("demo1 method2");
}

@Override
protected void method3() {
System.out.println("demo1 method3");
}
}

3、可以使用Demo1类中的实现完成逻辑

1
2
3
4
5
6
7
8
public static void main(String[] args) {
Template template = new Demo1();
template.mainMethod();
}

// demo1 method1
// demo1 method2
// demo1 method3
Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2019-2021 子夜
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信