設計模式(十二)責任鏈模式 -开发者知识库

設計模式(十二)責任鏈模式 -开发者知识库,第1张

定義:將能夠處理同一類請求的對象連成一條鏈,所提交的請求沿着鏈傳遞,鏈上的對象逐個判斷是否有能力處理該請求,如果能則處理,如果不能則傳遞給鏈上的下一個對象。

場景:打牌時,輪流出牌;接力賽跑;大學中,獎學金審批;公司中,公文審批

——公司里,報銷單據需要經過流程:

  申請人填單申請,申請給經理

  小於1000,經理審查

  超過1000,交給總經理審批

  總經理審批通過

——公司里面,請假條審批過程:

  如果請假天數小於3天,主任審批

  如果請假天數大於等於3天,小於10天,經理審批

  如果大於等於10天,小於30天,總經理審批

  如果大於等於30天,提示拒絕

 

以上面請假條審批過程為例:

1. 創建一個LeaveRequst類:

 1 package com.ztq.chainOfResp;
 2 
 3 /***
 4  * 封裝請假的基本信息
 5  * @author ZTQ
 6  *
 7  */
 8 public class LeaveRequest {
 9     private String empName;
10     private int leaveDays;
11     private String reason;
12     
13     public LeaveRequest(String empName, int leaveDays, String reason) {
14         super();
15         this.empName = empName;
16         this.leaveDays = leaveDays;
17         this.reason = reason;
18     }
19     public String getEmpName() {
20         return empName;
21     }
22     public void setEmpName(String empName) {
23         this.empName = empName;
24     }
25     public int getLeaveDays() {
26         return leaveDays;
27     }
28     public void setLeaveDays(int leaveDays) {
29         this.leaveDays = leaveDays;
30     }
31     public String getReason() {
32         return reason;
33     }
34     public void setReason(String reason) {
35         this.reason = reason;
36     }
37     
38 }

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复