-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathClient.java
More file actions
28 lines (22 loc) · 1.01 KB
/
Copy pathClient.java
File metadata and controls
28 lines (22 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package designpattern.responsibilitychain;
/**
* 职责链模式
*
* 将能够处理同一类请求的对象连成一条链,使这些对象都有机会处理请求,所提交的请求沿着链传递。
* 从而避免请求的发送者和接受者之间的耦合关系。
* 链上的对象逐个判断是否有能力处理该请求,如果能则就处理,如果不能,则传给链上的下一个对象,直到有一个对象处理它为止。
*/
public class Client {
public static void main(String[] args) {
Handler villageHandler = new VillageHandler();
Handler townHandler = new TownHandler();
Handler countyHandler = new CountyHandler();
villageHandler.setNext(townHandler);
townHandler.setNext(countyHandler);
System.out.println("county request:");
villageHandler.handleRequest("county");
System.out.println("-------------------");
System.out.println("city request:");
villageHandler.handleRequest("city");
}
}