0%

责任链模式

前言:责任链模式

类图

image-20191226001146070

代码

Handler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/**
* @author shency
* @description: TODO
* @date: 2019/11/4
*/
public abstract class Handler {
/**
* 下一个处理器
*/
private Handler nextHandler;

public abstract void handleRequest();

public Handler getNextHandler() {
return nextHandler;
}

public void setNextHandler(Handler nextHandler) {
this.nextHandler = nextHandler;
}
}
ConcreteHandler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/**
* @author shency
* @description: TODO
* @date: 2019/11/4
*/
public class ConcreteHandler extends Handler {
@Override
public void handleRequest() {
System.out.println(this.toString() + "处理器执行");
if(getNextHandler() != null){
getNextHandler().handleRequest();
}
}
}
Main
1
2
3
4
5
6
7
8
9
10
11
12
/**
* @author shency
* @description: TODO
*/
public class Main {
public static void main(String[] args) {
Handler h1 = new ConcreteHandler();
Handler h2 = new ConcreteHandler();
h1.setNextHandler(h2);
h1.handleRequest();
}
}

image-20191226001359818

-------------本文结束感谢您的阅读-------------