設計模式 行為型模式 職責鏈模式

2021-07-07 10:08:51 字數 1517 閱讀 2492

//採購單:請求類

class

purchaserequest

public

void setamount(double amount)

public

double getamount()

public

void setnumber(int number)

public

int getnumber()

public

void setpurpose(string purpose)

public string getpurpose()

}//審批者類:抽象處理者

abstract

class

protected string name; //審批者姓名

this.name = name;

}//設定後繼者

public

this.successor = successor;

}//抽象請求處理方法

public

abstract

void processrequest(purchaserequest request);

}//主任類:具體處理者

class

director

extends

public director(string name)

//具體請求處理方法

public

void processrequest(purchaserequest request) else

}}//副董事長類:具體處理者

class

vicepresident

extends

public vicepresident(string name)

//具體請求處理方法

public

void processrequest(purchaserequest request) else

}}//董事長類:具體處理者

class

president

extends

public president(string name)

//具體請求處理方法

public

void processrequest(purchaserequest request) else

}}//董事會類:具體處理者

class

congress

extends

public congress(string name)

//具體請求處理方法

public

void processrequest(purchaserequest request)

}class

client

}

行為型模式 職責鏈模式

職責鏈模式 chain of responsibility pattern 避免請求傳送者與接收者耦合在一起,讓多個物件都有可能接收請求,將這些物件連線成一條鏈,並且沿著這條鏈傳遞請求,直到有物件處理它為止。職責鏈模式是一種物件行為型模式。它定義了乙個處理請求的介面,一般設計為抽象類,由於不同的具體...

設計模式 行為型模式 責任鏈模式

設計模式 行為型模式 責任鏈模式 將請求沿著鏈傳遞,然後直到物件處理即可。邏輯如上,只處理1,2,3情況,其餘的情況都不處理。物件 public class level public boolean above level level 將物件進行封裝 public class request pub...

14 行為型模式 職責鏈模式

模式動機 chain of responsibility pattern 對於某個請求,有多個接收者都可能處理,將這樣的接收者鏈結成乙個單向鍊錶,根據不同的請求型別決定最終由哪個結點負責處理。不同結點需要維護乙個指向下乙個結點的鏈結,該鏈結可以通過構造結點時傳入,也可以通過結點介面指定下乙個接收結點...