/*
* 責任鏈模式
* 優點
* 將請求和處理分開,兩者解耦,提高系統的靈活性。
* 缺點
* 效能問題,請求鏈比較長時,消耗效能打
* 除錯不很方便
*/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...