package china.of.responsibility.pattern;
public abstract class handler
public string getname()
public void setsuccessor(handler succhandler)
public abstract void exect(request request);
}
package china.of.responsibility.pattern;
public class request
//省略get/set方法
}
package china.of.responsibility.pattern;
public class handler_lev1 extends handler
@override
public void exect(request request)
else
}}
package china.of.responsibility.pattern;
public class handler_lev2 extends handler
@override
public void exect(request request)
else if(request.getcount()<120&&this.name=="楊過他媳婦 小龍女")
else
}}
package china.of.responsibility.pattern;
public class handler_lev3 extends handler
@override
public void exect(request request)
else
}}
package china.of.responsibility.pattern;
public class client
}
測試結果
張無忌同意買20件屠龍刀
楊過他媳婦 小龍女同意買115件玄鐵劍
黃藥師同意買125件碧玉簫
拒絕買170件九陰真經
本文將一下兩篇資料的特點組合了一下
包括 責任鏈可以不從鏈的起始點開始
和 每個處理者可以把請求交給自己的同級者而不一定是上級
參考資料
Android 設計模式 筆記 責任鏈模式
介紹 我們把多個節點首尾相連所構成的模型稱之為鏈,對於鏈每個節點都可以拆開再連線,因此鏈式結構具有很好的靈活性。程式設計時候,我們這一結果應用於程式設計,把每乙個節點看做乙個物件,每乙個物件擁有不同的處理邏輯,當乙個請求從鏈式的首端發出。沿著鏈的路徑一次傳遞給每乙個節點物件,直至有物件處理這個請求位...
設計模式 責任鏈模式(學習筆記)
責任鏈模式原理 示例專案 購買請求決策專案 購買請求決策專案介紹 決策因素 決策級別 組長 部長 副總 總裁 傳統類圖結構 責任鏈模式類圖 責任鏈模式 如果有多個物件都有機會處理請求,責任鏈可使請求的傳送者和接收者解耦,請求沿著責任鏈傳遞,直到有乙個物件處理了它為止。優點 將請求的傳送者和接收者解耦...
區塊鏈讀書筆記四
區塊鏈對大規模協作產生的影響 對區塊鏈未來的前景的興奮點在於,極高的生產力會將這個星球上所有的人和機器都連入乙個全新的網路,也許到了21世紀下半夜,資本主義走向沒落,區塊鏈去中心化協同共享將取而代之,每個人都有自己的個性資產以及榮譽。區塊鏈作為新興協同的共享模式的最佳技術手段,將培養和鼓勵個人參與到...