通用类型系统(CTS)

来源:互联网 发布:如何制作常用算法演示 编辑:程序博客网 时间:2024/06/06 03:38

类型是CLR的根本,所以MICROSOFT制定了一个正式的规范来描述类型的定义和行为,这就是“通用类型系统“ (Common Type System,CTS)。

CTS规范规定

1.字段 

作为对象状态一部分的数据变量。字段根据名称和类型来区分。

2.方法

针对对象执行操作函数,通常会改变对象状态。方法有一个名称丶一个签名以及一个或多个修饰符。签名指定参数数量;参数类型;方法是否有返回值;如果有返回值,还要指定返回值类型。

3.属性

对于调用者,属性看起来很象字段。但对于类型的实现者,属性看起来像是一个方法或者两个方法。属性允许在访问值之前进行参数的校验等,以及在必要时计算某个值。还可以创建只读或者只写的字段。

4.事件

事件在对象以及其他相关对象之间实现了通知机制。

CTS访问规则

1.private

成员只能由同一个类中的其他成员访问

2.family

成员可由派生类型访问,不管那些类型是否在一个程序集中。注:许多语言(比如C++和C#)都用protected修饰来标识family

3.family and assembly

成员可由派生类型访问,但这些派生类型必须在同一个程序集中定义。

3.assembly

成员可由同一个程序集中的任何代码访问。许多语言都用internal修饰符来标识assembly。

4.family or assembly

成员可由任何程序集中的派生类型访问。成员也可由同一个程序集中的任何类型访问。C#用protected internal修饰符标识family or assembly.

5.public

成员可由任何程序集中的代码访问。

CTS规定一个类型只能从一个派生。

CTS规定所有类型必须从预定义的System.Object类型继承。

0 0
原创粉丝点击