- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
NET体系结构
.NET体系结构
??????????????????????????????????????
??????????????????????????????????????
.NET体系由公共语言运行库(CLR)(Common Language Runtime)和.NET Framework类库所构成。CLR是.NET Framework 的核心执行环境,也称为.NET运行库。.NET Framework类库是一个内容丰富的类集合,它可以完成以前要通过Windows API来完成的绝大多数任务。
??????????????????????????????????????
??????????????????????????????????????
一、CLR概述
??????????????????????????????????????
??????????????????????????????????????
CLR主要负责托管代码的编译和运行。在.NET中代码的编译分为两个阶段: 1. 把源代码编译为Microsoft中间语言(IL)。2. CLR把IL编译为平台专用的代码。
??????????????????????????????????????
在CLR的控制下运行的代码常常称为托管代码(managed code)。托管代码的优点:
??????????????????????????????????????
1. 平台无关性。源代码先编译成中间语言,运行时由CLR将中间语言编译成平台专用的代码,跟Java的字节代码一样,这样即可实现平台无关性。
??????????????????????????????????????
2. 提高性能。首先,IL比Java的字节码作用还要大,因为IL是即时编译的,而Java的字节码常常是解释性的,在转换为平台可执行代码的时候可能会导致性能损失。其次,.NET的即时编译器(JIT)(Just In Time)并非一次把全部代码编译完才执行,而是只编译调用的那部分代码,并把得到的这部分内部可执行代码保存起来,下次需要调用的时候无须重新编译。Microsoft认为这个过程要比一开始编译整个应用程序代码的效率高得多,因为任何程序的大部分代码实际上并不是在每次运行过程中都执行。最后,传统的编译器会优化代码,但它们的优化过程是独立于代码所运行的特定处理器的。例如Visual Studio 6优化了一台一般的Pentium机器,它所生成的代码就不能利用Pentium Ш处理器的硬件特性。而JIT与平台无关,所以它可以针对不同的机器完成不同的优化。
??????????????????????????????????????
3. 语言的互操作性。互操作性即能将任何一种语言编译为中间代码,编译好的代码可以与从其它语言编译过来的代码进行交互操作。在.NET中可以交互操作的语言有C#、VB.NET、Visual C++.NET、Visual J#、脚本语言、COM和COM+。
??????????????????????????????????????
??????????????????????????????????????
二、中间语言
??????????????????????????????????????
??????????????????????????????????????
中间语言(IL)在.NET Framework中有非常重要的作用,所有面向.NET的语言都要先编译成IL,那么它们在逻辑上都需要支持IL的主要特征。IL的主要特征:
??????????????????????????????????????
1. 面向对象和使用接口
2. 值类型和引用类型之间的巨大差别
3. 强数据类型
4. 使用异常来处理错误
5. 使用特性(attribute)
??????????????????????????????????????
下面详细讨论一下这些特性。
??????????????????????????????????????
1. 面向对象和接口的支持
??????????????????????????????????????
Microsoft为IL选择的特定道路是传统的面向对象的编程,带有类的单一继承性。此外IL还引进了接口的概念。.NET接口与COM接口不同,它们不需要支持任何COM基础结构,例如,它们不是派生自IUnknown,也没有GUID。但是它们与COM接口共享下述理念:提供一个契约,实现给定接口的类必须提供该接口指定的方法和属性的实现方式。
????????????????????????????????
您可能关注的文档
- CDA手术对椎间盘退变患者的临床预后效果评价.doc
- cisco映射方法.docx
- C入门了解及主要概念.docx
- chapter3习题.doc
- c和net期末考试复习资料.doc
- C组料填筑作业指导书.doc
- DCAC逆变器装置综述.doc
- DCC烟气脱销脱硫装置安全设施施工监理报告.doc
- DC-DC几种基本拓扑的比较.doc
- FD216环境测氡仪的操作规程.doc
- 江苏省灌云高级中学2023-2024学年高三上学期第一次月考地理试题含答案.docx
- 备战2024年高考物理一轮重难点复习 第十三章 近代物理.docx
- 江苏省高邮市一中2021-2022学年高三上学期第一次月考语文试题(原卷版).docx
- 江苏省华罗庚中学2023-2024学年高三上学期12月阶段检测数学试卷含答案.docx
- 江苏省海门中学2023-2024学年高三上学期第一次调研考试地理试题及答案.docx
- 备战2024年高考物理一轮重难点复习 第九章 恒定电流.docx
- 江苏省高邮市2023-2024学年高三下学期3月学情调研数学试题含答案.docx
- 备战2024年高考物理一轮重难点复习 实验十一:探究影响感应电流方向的因素.docx
- 备战2024年高考物理一轮重难点复习 实验三:验证平行四边形定则.docx
- 备战2024年高考物理一轮重难点复习 第十四章 光.docx
文档评论(0)