統(tǒng)計

          留言簿(1)

          DB

          Others

          QA

          Tech Website

          閱讀排行榜

          評論排行榜

          【JUnit源碼解讀】--觀察者模式

          一、觀察者模式定義
                   觀察者模式(Observer): 在對象之間定義一對多的依賴,這樣一來,當(dāng)一個對象改變狀態(tài),依賴它的對象都會收到通知,并自動更新

          二、在JUnit中的體現(xiàn)




          TestResult中用Vector保存各個監(jiān)聽器(文本界面、圖形界面和Eclipse插件)
          protected Vector fListeners;  //監(jiān)聽器集合

          在測試運(yùn)行階段,如果出現(xiàn)Error 或者 Failure,TestResult 則會通知各個監(jiān)聽器
          public synchronized void addFailure(Test test, AssertionFailedError t) {
                  fFailures.addElement(
          new TestFailure(test, t));
                  
          //觀察者模式在這里體現(xiàn)出來了,當(dāng)fFailures有變化時,馬上通知其它Listeners
                  for (Enumeration e= cloneListeners().elements(); e.hasMoreElements(); ) {
                      ((TestListener)e.nextElement()).addFailure(test, t);
                  }

              }


          posted on 2011-02-15 10:33 XXXXXX 閱讀(228) 評論(0)  編輯  收藏 所屬分類: Programing

          主站蜘蛛池模板: 绵竹市| 徐州市| 田东县| 靖州| 玛曲县| 双城市| 韶关市| 新龙县| 巨鹿县| 横峰县| 丰顺县| 绿春县| 双流县| 黄大仙区| 磴口县| 邯郸市| 彭水| 古交市| 庆阳市| 临澧县| 罗田县| 平陆县| 仲巴县| 潢川县| 灵寿县| 台江县| 肇州县| 邢台市| 武冈市| 侯马市| 江陵县| 左贡县| 连云港市| 红原县| 灵石县| 霍州市| 浦北县| 惠水县| 甘肃省| 措美县| 堆龙德庆县|