1.之所以要有属性的概念,是为了向类提供良好的接口。在没有字段与属性之分前,都是通过将变量设为public,或是将变量设为private,而通过公有函数来改变其值。C++中的做法:
class Demo
{
private int v; public void SetV(int value);
public int GetV();}void Demo::SetV(int value)
{
v = value;
}int Demo::GetV()
{
return v;
}C#的做法:
class Demo
{
private int _v;
public void V
{
set
{
_v = value;
}
get
{
return _v;
}
}
}不难看出,在C#中区分出字段和属性两个概念还是不错的做法的。2.委托
委托起的作用与回调函数类似,但是委托是类型安全的,而回调函数不是。关于委托的概念CSDN上很多人都讲了,不想再重复一次。你用“委托”搜索一下,就会看到很多贴子的。
class Demo
{
private int v; public void SetV(int value);
public int GetV();}void Demo::SetV(int value)
{
v = value;
}int Demo::GetV()
{
return v;
}C#的做法:
class Demo
{
private int _v;
public void V
{
set
{
_v = value;
}
get
{
return _v;
}
}
}不难看出,在C#中区分出字段和属性两个概念还是不错的做法的。2.委托
委托起的作用与回调函数类似,但是委托是类型安全的,而回调函数不是。关于委托的概念CSDN上很多人都讲了,不想再重复一次。你用“委托”搜索一下,就会看到很多贴子的。
2.委托继承了连续调用多个方法的能力,不但支持实例方法的调用,而且还支持静态方法的调用