首页 > 代码库 > c#中的变量,属性,字段

c#中的变量,属性,字段

c++中只有成员变量和函数这个概念,然而c#中增加了很多术语:字段,属性,变量,方法,消息,委托。。。

  • 先看看“变量”这个词:这个术语的意思应该就是c++中“变量”的一个更小的子集。限定于函数或者全局的定义,比如int a;用来表示一块内存区域。
  • 字段:应该是特指类中的变量。比如在类中定义一个a,int a; 很奇怪,这就叫字段了。
  • 属性:特指类,接口中对字段操作的一个封装。和字段的差别就是,没有没get,set了。
  • 方法:就是函数了。
  • 消息:这个是c++没有的东西。其实是委托的一个字段?
  • 委托:类似函数指针。

 显然上面的每个术语都是不重复的。比如说,消息既不是属性,也不是字段,也不是方法,消息就是消息,一种新的类型。

 


所以就有了下面的说法:

接口中只能包含:方法,属性,消息,索引器。这里没有字段,因为接口是抽象的描述,没有任何实例化的可能,然而字段是占用内存空间的。

抽象类中可以包含:方法,属性,消息,索引器,字段。

 

c#中的变量,属性,字段