代码重构~方法归父

返回目录

这几天牙痛的厉害,所有一直没有写博客,今天正好有个培训的机会,所以就把“代码重构”这块的内容整理了一下,首先看一下方法归父吧。

方法归父  — 或译函数上移,指的是方法从子类移动到父类,为什么呢,其主要原因就是一个方法在多个类中出现了,这样违背了REP原则,出现了重复的代码,这时,我们称为"代码的坏味道",我们需要将代码进行重构,将这个方法提升到它们的基类中进行

实现,当前如果子类有各自的逻辑,还可以将父类的方法声明为virtual虚方法,这样,子类可以根据自己的业务去重写它.

代码如下:

 1     #region 方法归父
 2         /// <summary>
 3         /// 多于一个类中都有相同的Insert方法,这时,我们应该
 4         /// 考虑将Insert方法归到父到中
 5         /// </summary>
 6         class sub1
 7         {
 8             /// <summary>
 9             /// 插入方法
10             /// </summary>
11             public void Insert()
12             {
13                 throw new NotImplementedException("插入方法");
14             }
15         }
16         class DisplayBase
17         {
18             /// <summary>
19             /// 插入方法
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  张占岭  阅读(1320)  评论(0编辑  收藏  举报