我刚学c#,有个问题,捆饶我好久。请问能给我解答吗?
就是在类里面:
一.
public class a
{
public string aa;
}
二.
public class b
{
private string bb;
public string BB
{
get
{
return bb;
}
set
{
bb=value;
}
}
}
a.aa="aa";
b.BB="aa";
我想问的第一个类的赋值功能,和第二个类一样。为什么要用第二个类呢??
使用第一种方法快多了呀?

解决方案 »

  1.   

    后面一个在get和set时可以附加一些操作, 如检查数据有效性的
      

  2.   

    同意~某个属性不能修改时,可以设定为只有get访问器。防止自己或别人不小心对它赋值。
      

  3.   

    第一个类不比第二个类快,因为编译器编译出来IL代码基本上一样...get和set访问器,相当于方法,可以在set和get之前做其它操作,比如判断值是否有效等等...
      

  4.   

    看这本书
    effective c#Item 1: Always Use Properties Instead of Accessible Data Members 
    解释的很详细