中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

代(dai)碼重構(gou)~方(fang)法歸父

返回目錄

這幾天牙痛(tong)的(de)厲害(hai),所(suo)有(you)一直(zhi)沒有(you)寫(xie)博(bo)客,今天正好有(you)個培訓(xun)的(de)機會,所(suo)以(yi)就把“代碼重構”這塊(kuai)的(de)內(nei)容整理(li)了一下(xia),首先看(kan)一下(xia)方(fang)法(fa)歸(gui)父吧(ba)。

方法歸父  — 或譯函數上(shang)移,指的(de)是(shi)方(fang)(fang)法(fa)從子類(lei)移動到父類(lei),為(wei)(wei)什么呢,其主(zhu)要原(yuan)因(yin)就(jiu)是(shi)一個方(fang)(fang)法(fa)在多個類(lei)中(zhong)出現了,這(zhe)樣違背了REP原(yuan)則,出現了重復的(de)代(dai)(dai)碼(ma),這(zhe)時,我(wo)們稱為(wei)(wei)"代(dai)(dai)碼(ma)的(de)壞味道",我(wo)們需要將代(dai)(dai)碼(ma)進行(xing)重構,將這(zhe)個方(fang)(fang)法(fa)提升到它們的(de)基類(lei)中(zhong)進行(xing)

實現,當前如果子類有各自(zi)的(de)邏輯(ji),還可以(yi)將父類的(de)方法(fa)聲明為(wei)virtual虛方法(fa),這(zhe)樣(yang),子類可以(yi)根據自(zi)己的(de)業務去重寫它.

代碼如下:

 1     #region 方法歸父
 2         /// <summary>
 3         /// 多于一個類中都有相同的Insert方法,這時,我們應該
 4         /// 考(kao)慮將Insert方(fang)法歸到父(fu)到中
 5         /// </summary>
 6         class sub1
 7         {
 8             /// <summary>
 9             /// 插入方法
10             /// </summary>
11             public void Insert()
12             {
13                 throw new NotImplementedException("插入方法(fa)");
14             }
15         }
16         class DisplayBase
17         {
18             /// <summary>
19             /// 插(cha)入方(fang)法
20             /// </summary>
21             public virtual void Insert()
22             {
23                 throw new NotImplementedException("插入方法");
24             }
25         }
26         class sub2 : DisplayBase
27         { }
28         #endregion

 

返回目錄

posted @ 2012-08-30 15:27  張占嶺  閱讀(1356)  評論(0)    收藏  舉報