这是完整的责任链设计模式过程,通过学习,让我解决了实际当中的很多问题。
----------------------- I'm very grateful to Design Patterns
UML class diagram
participants
The classes and/or objects participating in this pattern are:
- Handler (Approver)
- defines an interface for handling the requests
- (optional) implements the successor link
- ConcreteHandler (Director, VicePresident, President)
- handles requests it is responsible for
- can access its successor
- if the ConcreteHandler can handle the request, it does so; otherwise it forwards the request to its successor
- Client (ChainApp)
- initiates the request to a ConcreteHandler object on the chain
sample code in C#
This structural code demonstrates the Chain of Responsibility pattern in which several linked objects (the Chain) are offered the opportunity to respond to a request or hand it off to the object next in line.
This real-world code demonstrates the Chain of Responsibility pattern in which several linked managers and executives can respond to a purchase request or hand it off to a superior. Each position has can have its own set of rules which orders they can approve.
这是完整的责任链设计模式过程,通过学习,让我解决了实际当中的很多问题。