在C#程序设计中,基于“封装”的初衷,我们常常把字段设置为private来修饰;那么就会出现一个问题:
- 当在外部类中需要访问这个字段的值时,由于它是“私有的“,从而无法访问。
- 若设置成public,那么该字段的值有可能会被修改,这不是我们想要的。
这时"属性"就派上用场了:我们通过"属性"这种固定的成员,来实现对于字段数据的修改和读取。相较于编写成员方法来解决上述问题,编写属性的方式更加简洁和具有阅读性。
private int x;
public int X //这里设置了一个属性*属性的类型指定了get和set这2种访问器读取和写入数据的类型*
{
set{this.x=value;}
get{return this.x;}
}
调用时赋值即可;
注意事项:
- 属性从逻辑上来讲就是特殊的字段,但是属性不能直接访问数据。
- 一个属性内get和set访问器的数量:两者都各有一个;一个get或一个set;都没有(没意义)。
- 只包含一个get访问器(称为只读属性)、反之为”只写属性“。