文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>C# 语言规范 类和对象 属性

C# 语言规范 类和对象 属性

时间:2011-01-11  来源:zhanqi

  • 属性 (property) 是字段的自然扩展。

  • 属性和字段都是命名的成员,都具有相关的类型,且用于访问字段和属性的语法也相同。

  • 然而,与字段不同,属性不表示存储位置。

  • 相反,属性有访问器 (accessor),这些访问器指定在读取或写入它们的值时需执行的语句。

  • 属性的声明与字段类似,不同的是属性声明以位于定界符 { 和 } 之间的一个 get 访问器和/或一个 set 访问器结束,而不是以分号结束。

  • 同时具有 get 访问器和 set 访问器的属性是读写属性 (read-write property),

  • 只有 get 访问器的属性是只读属性 (read-only property),

  • 只有 set 访问器的属性是只写属性 (write-only property)。

  • get 访问器相当于一个具有属性类型返回值的无形参方法。除了作为赋值的目标,当在表达式中引用属性时,将调用该属性的 get 访问器以计算该属性的值。

  • set 访问器相当于具有一个名为 value 的参数并且没有返回类型的方法。当某个属性作为赋值的目标被引用,或者作为 ++ 或 -- 的操作数被引用时,将调用 set 访问器,并传入提供新值的实参。

  • List<T> 类声明了两个属性 Count 和 Capacity,它们分别是只读属性和读写属性。下面是这些属性的使用示例。

    • List<string> names = new List<string>();
      names.Capacity = 100;   // Invokes set accessor
      int i = names.Count;    // Invokes get accessor
      int j = names.Capacity; // Invokes get accessor
  • 与字段和方法相似,C# 同时支持实例属性和静态属性。

  • 静态属性使用 static 修饰符声明,而实例属性的声明不带该修饰符。

  • 属性的访问器可以是虚的。

  • 当属性声明包括 virtual、abstract 或 override 修饰符时,修饰符应用于该属性的访问器。

  • 相关阅读 更多 +
    排行榜 更多 +
    辰域智控app

    辰域智控app

    系统工具 下载
    网医联盟app

    网医联盟app

    运动健身 下载
    汇丰汇选App

    汇丰汇选App

    金融理财 下载