浅谈partial class的理解

.net 2.0中,有了个partial这样的关键字,最初接触它是在asp.net2.0中的codeFile中见到的。

总给人一种不爽的感觉,默认生成那样的代码。所以项目中一直并不用它,包括我接触的人当中,也鲜有人关注过它,个人觉得还是失败的,这样的一个功能点。

partial,部分之义,partial class,顾名思义为 部分类,msdn上称之为 分布类,是更贴切一些的,意思即为:一个类的一个部分。 也就是说,可分别定义该类的接口、成员等,编译器会在编译阶段将之合并成为一个类的。如下代码:

Code

查看其IL代码,即可知晓其真正的原身:


虽然这样能分开对之进行编写设计,但其自身的局限性,限制了别人对它的使用,总觉得是个幌子而已。

局限性:1、必须存在于同一个程序集(dll exe)中 2、修饰符还必须一样,如public/private/protected的,则不成 3、只能应用于class interface and  struct   4、不易统一管理

总之个人觉得这就是个幌子,极其恨之,没事搞个partial来,究竟能有多少实际意义呢。。。 

 

posted @ 2008-09-26 07:16  FallingAutumn  阅读(488)  评论(0编辑  收藏  举报