public MainObserverProgram() { //Scenario creation this.ConcreteSubject1 = new Subject(0, "Concrete Subject 1"); this.ConcreteSubject2 = new Subject(1, "Concrete Subject 2"); this.ObserverA = new ConcreteObserverA(); this.ObserverB = new ConcreteObserverB(); ConcreteSubject1.AttachObserver(ObserverA); ConcreteSubject1.AttachObserver(ObserverB); ConcreteSubject2.AttachObserver(ObserverA); }