/// <summary> /// 执行 /// </summary> public void Run() { // 创建元素 ElementA elementA = new ElementA(); ElementB elementB = new ElementB(); // 添加观察者 IVisitor visitorA = new VisitorA(); elementA.Accept(visitorA); elementB.Accept(visitorA); // 获取同一个观察者对不同元素的观察 visitorA.VisitElementA(elementA); visitorA.VisitElementB(elementB); }
/// <summary> /// 观察元素A /// </summary> /// <param name="element"></param> public void VisitElementA(ElementA element) { }