C#组件开发--属性

组件是一些可以重复使用的功能化的类.

属性(property)用于隐藏类中的字段. 一般的将字段设置成 private, 通过属性安全的,受限制的访问字段; 同时, 在属性中封装附加的逻辑和规则,以处理所有可能的赋值方式.

属性是字段和方法的一个交集, 即具有存储和代码限定访问的功能, 一般定义如下:

Accessmodifier Type PropertyName

{

     get

     {

            // get accessor

      }

     set

     {

            // set accessor

      }

}

只读属性: 仅包含 get accessor的属性;

只写属性: 仅包含 set accessor的属性;(一般用于密码的数据保护).

虽然字段和属性的访问语法是相同的, 但考虑到兼容性的问题, 应该尽量使用属性对字段进行封装.

自动属性:

  public int Length {get; set;}

  编译器自动会对将之转化为如下代码:

  private int length;

  Public int Length

{

    get

    {

         return length;

     }

    set

    {

         length = value;

     }

 }

使用属性初始化对象 -- 可以在初始化对象的同时对 public set 的属性赋值:

Triangle tri = new Triangle("等边三角形") {Side1Length = 5, Side2Length = 5, Side3Length = 5};

有点类似于VB 和Delphi 下的 with .. do 的语法, 不过仅限于对对象进行初始化的时候.

默认属性值: 在类的默认构造函数中, 对 public set 属性设置默认值.

posted @ 2011-08-03 07:11  沧海小小粟  阅读(473)  评论(0编辑  收藏  举报