設計23式 責任鏈

2021-08-10 06:29:53 字數 1220 閱讀 4475

/*

* 責任鏈模式

* 優點

* 將請求和處理分開,兩者解耦,提高系統的靈活性。

* 缺點

* 效能問題,請求鏈比較長時,消耗效能打

* 除錯不很方便

*/public class mymain

}//抽象的處理請求類(處理者)

abstract class handler

else

} }//處理請求

abstract protected void response(abstractrequest request);

public int getlevel()

public void setlevel(int level)

public handler getnexthandler()

public void setnexthandler(handler nexthandler) }

//抽象的請求類

abstract class abstractrequest

public void setlevel(int level)

public string getcontent()

public void setcontent(string content) }

class handlersss extends handler

@override

protected void response(abstractrequest request)

}class handlerss extends handler

@override

protected void response(abstractrequest request)

}class handlers extends handler

@override

protected void response(abstractrequest request)

}class requestssss extends abstractrequest

}class requestsss extends abstractrequest

}class requestss extends abstractrequest

}class requests extends abstractrequest

}

23 責任鏈模式

責任鏈模式 chain of responsibility pattern 為請求建立了乙個接收者物件的鏈。這種模式給予請求的型別,對請求的傳送者和接收者進行解耦 有多個物件可以處理同乙個請求,具體哪個物件處理該請求由執行時刻自動確定。舉例 學校經費審批,大於1000的要校長審批,小於1000的要後...

23種設計模式之責任鏈模式

責任鏈模式 chain of responsibility pattern 為請求建立了乙個接收者物件的鏈。這種模式給予請求的型別,對請求的傳送者和接收者進行解耦。這種型別的設計模式屬於行為型模式。在這種模式中,通常每個接收者都包含對另乙個接收者的引用。如果乙個物件不能處理該請求,那麼它會把相同的請...

23種設計模式 13 責任鏈模式

使多個物件都有機會處理請求,從而避免請求的傳送者和接受者質檢的耦合關係。將這個接收物件連成一條鏈,並沿著這條鏈傳遞請求,直到有乙個物件處理他為止。先來看乙個反面例子 使用大量的if判斷來選擇執行邏輯 public response handlerequest request request else...