Oop 如何在客户端类上同时建立观察者和可观察者?
我有一个Oop 如何在客户端类上同时建立观察者和可观察者?,oop,design-patterns,observer-pattern,Oop,Design Patterns,Observer Pattern,我有一个a类,一旦a类发生任何变化,它就会通知B类,而B类也会通知a类,反之亦然 如何实现这样的设计?任何样本都可以使用。该模式在观察者和受试者之间完全可以互换(反之亦然),毕竟它们只是通知其他对象的对象。简单地说 interface ISubject { void notifyObservers(); } interface IObserver { void notify(); } class A : ISubject, IObserver { publ
a类
,一旦a类
发生任何变化,它就会通知B类
,而B类
也会通知a类
,反之亦然
如何实现这样的设计?任何样本都可以使用。该模式在观察者和受试者之间完全可以互换(反之亦然),毕竟它们只是通知其他对象的对象。简单地说
interface ISubject
{
void notifyObservers();
}
interface IObserver
{
void notify();
}
class A : ISubject, IObserver
{
public void notifyObservers()
{
// Notify B that I've change!
}
public void notify()
{
// B has changed, do something!
}
}
class B : ISubject, IObserver
{
public void notifyObservers()
{
// Notify A that I've change!
}
public void notify()
{
// A has changed, do something!
}
}
答案就在你的标题里。这里没有什么特别的,只是使用观察者模式。双向的。