属性是这样的成员:
它们提供灵活的机制来读取、编写或计算私有字段的值。
可以像使用公共数据成员一样使用属性,但实际上它们是称作"访问器"的特殊方法。
这使得可以轻松访问数据,此外还有助于提高方法的安全性和灵活性
属性使类能够以一种公开的方法获取或设置值,同事隐藏实现或验证代码
get属性访问器用于返回属性值,而set访问器用于分配新值。
这些访问器可以���不同的访问级别
value关键字用于定义由set取值函数分配的值。
不实现set取值函数的属性是只读的。
对于不需要任何自定义访问器的代码的简单属性,可考虑选择使用自动实现的属性。
属性结合了字段和方法的多个方面。
对于对象的用户,属性显示为字段,访问该属性需要相同的语法。
对于类的实现者,属性是一个或两个代码块,表示一个get访问器和/或一个set访问器。
当读取属性时,执行get访问器的代码块;
当向属性分配一个新值时,执行set访问器的代码。
不具有set访问器的属性视为只读属性。
不具有get访问器的属性被视为只写属性。
同时具有这个两个访问器的属性是读写属性。
与字段不同,属性不作为变量来分类。因此,不能讲属性作为ref参数或out参数传递。
属性具有多种用法:
它们可在允许更改前验证数据;
它们可透明地公开某个类上的数据,该类的数据实际上是从其他源(例如数据库)检索到的;
当数据被更改时,它们可采取行动,例如引发事件或更改其他字段的值。
属性在类块中是按以下方式来声明的:
指定字段的访问级别,接下来指定属性的类型和名称,然后跟上声明get访问器和/或set访问器的代码块。