c#中的字段使类可以封装数据。微软将的访问级别设为了Pravite私有的,是为了确保数据的安全性。
在C#里边简单的属性一般与一个私有字段相关联,以控制这个字段的访问。
例:
pravite int name;
public int NN
{
get{return name;}
set{name=value;}
}
非该类访问该字段NN,并不知道他代表该类中的什么类型的数据,从而确保了数据安全性。
属性用访问器来控制非该类成员对该字段的访问(可以理解为加权限1.只读属性 2.只写属性 3.读写属性)
get访问器(读值)
set访问器(赋值)
例;
class A
{
 pravite int age;
 public int Age
 {
 get{return age;}
 set{age=value}
 }
}
class program
{
 static void main(string args[])
 {
 A a=new A();
 a.Age=15;
 int c=a.Age;
 Console.writeLine(c+"");
 Console.ReadLine();
 }
}
当A类的对象a给字段age赋值时,调用属性的set访问器,将值15给value;
当A类的对象a读字段age的值时,调用属性的get访问器,返回15给c ;
若要限制该字段只读/只写时,需用对应的访问器。
若要给字段赋值时,加一些约束时,如年龄介于0-100之间,需在set里边用if判断
如:
set
{
 if(value>0 && value<100)
 {
 age=value;
 }
 else
 {
 age=18;
 }
}
综上所述,属性的作用
一、给字段加权限
二、给字段加约束
三、隐藏给字段,确保数据安全