C#编程之C#语言(一)

接下来这些日子,我们将逐步学习C#语言编程。我们将这个过程分为5部分去学习与探讨。

这一章,我们学习第一部分内容C#语言;

首先我们先讲解一下C#语言的.NET体系结构。

我们知道C#是在.NET Framework中运行,所以对于C#语言来说,它有以下两个特点:

  1. C#的结构和方法论反应了.NET基础方法论。
  2. 在许多情况下,C#的特定语言功能取决于.NET的功能,或依赖于.NET基类。

接下来我们将阐述Microsoft中间语言(Microsoft Inermediate Language, MSIL 或 IL),所有编译好的代码都要使用这种语言。

通用类型系统(Common Type System, CTS).

公共语言规范(Common Language Specification,CLS)如何提供.NET语言件的互操作性。

C#与.NET的关系:

  1. C#是专门为Microsoft的.NET Framework一起使用而设计的。
  2. C#是一种基于现代面向对象设计方法的语言,在设计C#时,Microsoft还吸取了其他类似语言的经验,这些语言是近期面向对象规则得到广泛应用后才开发出来的。
  3. C#是一种语言,尽管它是生成面向.NE环境的代码,但它本身不是.NET的一部分。

在.NET中,编译分为两个阶段:

  1. 把源代码编译为Micosoft中间语言(IL);
  2. 公共语言运行库(CLR)把IL编译为平台专用的代码。

通常我们将在CLR控制下运行的代码称为托管代码(managed code),特点:

  1. 平台无关;
  2. 提高性能;
  3. 语言的互操作性;

中间语言的主要特征:

  1. 面向对象和使用接口;
  2. 值类型和引用类型之间的巨大差别;
  3. 强数据类型;
  4. 使用异常来处理错误;
  5. 使用特点(attribute).

程序集:

  1. 私有程序集---- 一般附带在某些软件上,且只能用于该软件中。
  2. 共享程序集--- 的其他应用程序可以使用的公共库。

发射:因为程序集存储了元数据,包括在程序集中定义的所有类型和这些类型的成员的细节,所以可以编程访问这些元数据,我们称这个技术为发射。

.NET Framework 类;

  1. .NET基类的一个优点是直观易用。

空间命名: 是.NET避免类名冲突的一种方式。

总的来说,.NET具有下述特性在编译和执行过程中的作用:

  1. 程序集和.NET基类;
  2. JIT编译;
  3. 应用程序域;
  4. 垃圾收集.
原文地址:https://www.cnblogs.com/lumao1122-Milolu/p/11834958.html