首页 > 编程知识 正文

(1)C#与.NET Framework、FCL与CLR

时间:2023-05-05 21:41:41 阅读:246984 作者:4306

C#语言是最主要的.NET Framework兼容语言,它是为了和.NET Framework一起使用而专门设计的。但是C#本身是一门语言,它只是用于生成面向.NET环境的代码,并不是.NET的一部分。换言之,C#编写的代码总是运行在.NET Framework中。而且,在很多时候,C#的特定功能依赖于.NET。比如,在C#中声明一个int类型,实际上是.NET中System.Int32类的一个实例。.NET Framework 支持的一些特性,C#并不支持;C#支持的一些特性,.NET Framework并不支持,例如运算符重载。

 托管代码与非托管代码。托管代码是指为.NET Framework 编写的代码,它在.NET Framework 的公共语言运行库(CLR)控制之下运行,类似于Java的虚拟机机制。托管代码应用程序可以获得CLR服务,例如类型检查、自动垃圾回收和安全支持等。非托管代码指不在CLR控制下的运行的代码,由操作系统直接运行。

托管代码不能直接写内存,是安全的,非托管代码是非安全代码,可以使用指针操作内存。

.NET Framework 的组成主要由FCL(.NET Framework 类库)和CLR(公共语言运行库)两部分组成。

FCL是一个全面的类库,它是生成.NET Framework 应用程序、组件和控件的基础。FCL由命名空间组成。每个命名空间都包含可在程序中应用的类、结构、委托和接口等。常见的命名空间有System、System.Windows等。

CLR是.NET Framework 核心组件,负责管理程序的执行。主要由公共语言规范(CLS)和通用类型系统(CTS)两部分组成。CLS定义了不同语言之间必须遵守的共同标准,包括函数调用方式、参数调用方式、数据类型和异常处理方式。通用类型系统用于解决不同编码语言的数据类型不同的问题,实现不同语言之间数据类型的统一。

jquery可不可以获取上一级元素

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。