CSharp设计模式读书笔记(18):中介者模式(学习难度:★★★☆☆,使用频率:★★☆☆☆)...
生活随笔
收集整理的這篇文章主要介紹了
CSharp设计模式读书笔记(18):中介者模式(学习难度:★★★☆☆,使用频率:★★☆☆☆)...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
中介者模式(Mediator Pattern):用一個中介對象(中介者)來封裝一系列的對象交互,中介者使各對象不需要顯式地相互引用,從而使其耦合松散,而且可以獨立地改變它們之間的交互,中介者模式又稱為調停者模式。
模式角色與結構:
示例代碼:
using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace CSharp.DesignPattern.MediatorPattern {class Program{static void Main(string[] args){}}// 抽象中介者abstract class Mediator{protected List<Colleague> colleagues; // 用于存儲同事對象public void Register(Colleague colleague){colleagues.Add(colleague);}public abstract void Operation();}class ConcreteMediator : Mediator{public override void Operation(){// ...((Colleague)colleagues[0]).ToString(); // 通過中介者調用同事類的方法// ... }}// 抽象同事類abstract class Colleague{protected Mediator mediator; // 維持一個抽象中介者的引用public Colleague(Mediator mediator){this.mediator = mediator;}public abstract void Method1(); // 聲明自身方法,處理自己的行為,共中介者調用// 定義依賴方法,與中介者進行通信public void Method2(){mediator.Operation();}}class ConcreteColleague : Colleague{public ConcreteColleague(Mediator mediator): base(mediator){ }public override void Method1(){// ... }} }?
轉載于:https://www.cnblogs.com/thlzhf/p/3993769.html
總結
以上是生活随笔為你收集整理的CSharp设计模式读书笔记(18):中介者模式(学习难度:★★★☆☆,使用频率:★★☆☆☆)...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: fromObject依赖的jar包
- 下一篇: asp.net ajax控件工具集 Au