C#与■NET的关系
C#是一种相当新的编程语言,C#的重要性体现在以下两个方面:
· 它是专门为与卜位⒛son的,NET FramewoR=起使用而设计的o屺TFramewOrk是一个功胄引|常
丰富的平台,可开发、部署和执行分布式应用胡。
· 它是一种基于现代面向对象设计方法的语言,在设计它时,M而⒂沮还吸取了其他所有类似语
言的经验,这些语言是近⒛ 年来面向对象规则得到广泛应用后才开发出来的。
.NET FrameWork的核心是其运行库执行环境,称为公共语言运行库cLθ或.NET运行库。通常
将在CLR控制下运行的代码称为托管代码伽田吧edcodeJ。
但是,在CLR执行编写好的源代码(在唧中或其他语言中编写的代码)之前,需要编译它们。
在。NET中,编译分为两个阶段:
(1)把源代码编译为Mσoson中间语言(L)。
田)CLR把IL编译为平台专用的代码。
这个两阶段的编译过程非常重要,因为Mhmon中间语言是提供,NET的许多优点的关键。
Mcrosoa中间语言与Java字节码共享一种理念:它们都是低级语言,语法很简单(使用数字代
码,而不是文本代码),可以非常快速地转换为本地机器码。对于代码,这种精心设计的通用语法有
很重要的优点:平台无关性、提高性能和语言的互操作性。
垃圾回收器佗arbage∞llector9用来在.NET中进行内存管理,特别是它可以恢复正在运行的应
用程序需要的内存。到目前为止,W血b昭平台己经使用了两种技术来释放进程向系统动态请求
的内存:
· 完全以手工方式使应用程序代码完成这些工作。
● 让对象维护引用计数。
N田运行库采用的方法是垃圾回收器,这是一个程序,其目的是清理内存。方法是所有动态请
求的内存都分配到堆上(所有的语言都是这样处理的,但在Ⅻ T中,CLR维护它自己的托管堆,
供,NET应用程序使用)。每隔一段时间,当Ⅻ T检测到给定进程的托管堆已满,需要清理时,就调
用垃圾回收器。垃圾回收器处理目前代码中的所有变量,检查对存储在托管堆上的对象的引用,确
定哪些对象可以从代码中访问—— 即哪些对象有引用。没有引用的对象就不再认为可以从代码中访
问,因而被删除。Java就使用与此类似的垃圾回收系统。
程序集
程序集(assembly,是包含编译好的、面向,NET FmmeWork的代码的逻辑单元。
原文地址:http://www.cnblogs.com/miffylf/p/4004191.html