.net框架读书笔记---类型成员及其访问限定(一)

接上一篇.net框架读书笔记---通用对象操作(三),开始学习类型以及每个类型的所有实例都具有的一组通用操作。

一、类型成员

一个类型可以定义零个或多个以下成员

  • 常数,常数是一个表示恒定不变的数值的符号,常数总是和类型而非它们的实例相关联,从这个意义上说,它们总是静态的。
  • 字段,字段表示一个数据的值,它或者是只读的,可读可写的。字段范围静态字段和非静态字段,静态字段被视为类型状态的一部分,实例字段被视为对象状态的一部分,建议将字段设置为私有。
  • 实例构造器,实例构造器是一种特殊的方法,它用来将一个新对象的实例字段初始化到正常的初始状态。
  • 类型构造器,类型构造器也是一种特殊的方法,它用来将一个类型的静态字段初始化到正常的初始状态。
  • 方法,方法是一个函数,用来改变或查询一个类型(就静态方法而言),或者一个对象(就实例方法而言)的状态,方法一般需要读写类型或者对象的字段。
  • 重载操作符,同样也是一个方法,它用操作符的形式定义了怎样对对象进行某种操作。
  • 转换操作符,也是一种方法,它定义了怎样将一个对象从一种类型转换到另一种类型。
  • 属性,属性仍是一种方法,它以一种简单的,类似字段的方式实现了设置、或者查询一个对象的状态或类型。
  • 事件.net框架读书笔记---事件(一) ),分为静态事件和实例事件,静态事件通过类型发送通知,通知的接收者可以是一个类型,也可以是一个对象,实例事件通过对象发送通知,通知的接收者可以是一个类型,也可以是一个对象,事件采用委托(.net框架读书笔记---委托(一))字段来维护登记该事件的侦听着集合。
  • 类型,类型内部可以嵌套定义其他类型。

下面代码展示了上面的类型

 

.net框架读书笔记---类型成员及其访问限定(一) 代码
   
     
class SomeType
{
// 嵌套类
class SomeNestedType { }

// 常数。只读字段、静态读写字段
const int someConstant = 1 ;
readonly int someReadOnlyField = 2 ;
static int someReadWriteField = 3 ;

// 类型构造器
static SomeType() { }

// 实例构造器
public SomeType() { }
public SomeType( int x) { }

// 实例方法
string InstanceMethod()
{
return null ;
}

// 静态方法
static void Main() { }

// 实例属性
int SomeProp
{
get
{
return 0 ;
}
set
{
// ...
}
}

// 实例索引器属性
public int this [ string s]
{
get
{
return 0 ;
}
set
{
// ...
}
}

// 实例事件
event EventHandler SomeEvent;
}

 

不管使用何种编程语言,编译器总是要先对我们的源代码进行处理,然后为每一种成员产生相关的元数据,并为其中的方法成员产生IL代码。元数据的格式和编程语言没有关系,这使得CLR成为名副其实的“通用语言运行时”。元数据信息对于所有语言都是通用的,这使得一门编程语言可以无缝的访问另一门语言编写的代码。

你可能感兴趣的:(.net)