中介者模式
常见应用:聊天系统
直接上代码
public class User
{
public string Name = "";
public User(string name)
{
Name = name;
}
public void Send(string Message,ZhongJie zj)
{
Console.WriteLine("{0} Send:{1}",this.Name,Message);
zj.Send(this,Message);
}
public void Get(string Message)
{
Console.WriteLine("{0} Get:{1}", this.Name, Message);
}
}
中介代码
public class ZhongJie
{
public List<User> userList = new List<User>();
public ZhongJie(List<User> list)
{
userList = list;
}
public void Send(User from,string text)
{
foreach (User user in userList.Where(s => !s.Name.Equals(from.Name)))
{
user.Get(text);
}
}
}
调用:
User u1 = new User("卡卡西");
User u2= new User("我爱罗");
User u3= new User("鸣人");
User u4= new User("佐助");
User u5= new User("小樱");
User u6= new User("大蛇丸");
ZhongJie zj = new ZhongJie(new List<User>() { u1,u2,u3,u4,u5,u6});
u2.Send("开饭啦",zj);
没有很好的理解,谁有兴趣,加我QQ咱们一块儿理解一下