现在的位置: 首页 > 综合 > 正文

CollectionBase抽象类中引用型属性List浅析 为何不为null

2014年02月03日 ⁄ 综合 ⁄ 共 376字 ⁄ 字号 评论关闭

         CollectionBase是一个抽象类,实现了IList接口,并在类结构中定义了IList类型的属性List.  原语句为:

        我以前一直有个误区,就是忽略了这里的List是一个属性而不是一个字段。注意get { return this;} 该语句返回本类对象,即继承抽象类的类的对象。加入这个类的类名为Animals:CollectionBase  那么就返回Animals的对象。我以前一直搞不懂为什么List为被实例化,它应该为null,在Animals类的成员函数中如果使用语句:List.Add();的话,就是不合理的,为此自己还做了大把测试。最后,我给自己做测试的接口型成员加上了同上的get { return
this;}语句后,程序就不报错了。由此得出属性的功能真的十分强大啊。直接把List实例化了。这体现了属性的一大优势。

抱歉!评论已关闭.