日期:2014-05-19  浏览次数:20798 次

get 和 set 属性对的问题
DataTable类的定义中有如下属性:
public   bool   CaseSensitive   {   get;   set;   }
怎么我这样写就不行呢?


------解决方案--------------------
DataTable类的定义中有如下属性:
public bool CaseSensitive { get; set; }
怎么我这样写就不行呢?
-----------------------------------
public bool CaseSensitive { get; set; }
这其实只是对代码的简述。是不完全的代码。只是为了说明一下结构而已。
------解决方案--------------------
在msdn文档中,对CaseSensitive属性的定义描述使用下面的形式:

public bool CaseSensitive { get; set; }

这仅仅是msdn的描述而已。那么在代码中是否会有这样的定义呢?如果你定义了一个抽象类,或者一个基类(不一定抽象),在这个类中可以使用上面的方法预先定义一个属性,然后在派生类中override这个属性,也就是说,在基类中定义,在派生类中实现。

如果你直接new一个包含上面属性定义而不是属性实现的类,恐怕是编译都无法通过的。