OBSERVER(观察者)模式的------定义对象间的一种一对多的关系,当一个对象的状态发生改变时,所有依赖它的对象都得到通知,并被自动更新。
比较倾向于使用事件来进行更新通知。
public interface ISubject
{
}
public interface IObserver
{
//盯紧哪个目标
ISubject Subject
{
set;
}
}

public class SubjectDemo:ISubject
{
public delegate void UpdateEventHandle(object sender, EventArgs e);
public event UpdateEventHandle OnUpdate=null;
public void DoSomething()
{
if(OnUpdate!=null)
OnUpdate(this,null);
}
//
.
}

public class ObserverDemo:IObserver
{
protected ISubject m_Subject;
public ISubject Subject
{
set{ m_Subject=value;}
m_Subject.OnUpdate+=new UpdateEventHandle(this.Update);
}
//
.
public void Update()
{
}
}

比较倾向于使用事件来进行更新通知。
public interface ISubject
{
}
public interface IObserver
{
//盯紧哪个目标
ISubject Subject
{
set;
}
}
public class SubjectDemo:ISubject
{
public delegate void UpdateEventHandle(object sender, EventArgs e);
public event UpdateEventHandle OnUpdate=null;
public void DoSomething()
{
if(OnUpdate!=null)
OnUpdate(this,null);
}
//
.
}
public class ObserverDemo:IObserver
{
protected ISubject m_Subject;
public ISubject Subject
{
set{ m_Subject=value;}
m_Subject.OnUpdate+=new UpdateEventHandle(this.Update);
}
//
.
public void Update()
{
}
}


浙公网安备 33010602011771号