一:什么是.NET?它包括什么?

.Net是为简化在第三代因特网的高分布式环境下的应用程序开发,基于开放互联网标准和协议之上,实现异质语言和平台高度交互性,而构建的新一代计算和通信平台。

.Net主要包括公共语言运行时(Common Language Runtime)和.Net构架类库。

二: .NET的主要优点有哪些?

.Net的主要优点有跨语言,跨平台,安全,以及对开放互联网标准和协议的支持.

<a>.Net支持多种语言的互操作,即在一种语言下开发的组件,可在另一组件下通过面向对象的继承而得

以重用,目前.Net支持的语言达二十多种。

<b>.Net通过将各语言先编译成中间语言(IL),然后再执行时用即时编译器(Just In Time)将之编译成本

地平台代码来实现异构平台下对象的互操作,目前.Net支持的平台有Windows,Linux和Unix的支持正

在开发中。

<c>.Net通过公共语言运行时(Common Language Runtime)来实现资源对象,类型的安全.

<d>.Net通过对HTTP,XML,SOAP,WSDL等Internet标准的强劲支持提供在异构网络环境下获取远程服务,

连接远程设备,交互远程应用的编程界面.

三: .Net中的公共语言运行时(Common Language Runtime)指什么?它在.Net中处什么位置?

CLR(Common Language Runtime)公共语言运行时是整个.net framework构建的基础,是实现.Net跨平

台,跨语言,代码安全等核心特性的关键。它实际上是驻留在内存里的一段代理代码,负责在.net

整个执行期间的代码管理工作,比较典型的有:内存管理,线程管理,远程管理,代码强制安全类型

等。这些都可称得上.net framework的生命线。实际上,CLR代理了一部分操作系统的管理

功能。

四..Net构架类库是什么?包括哪些内容?

<a>.Netl构架类库是基于运行时面向对象的特性而建造的,和CLR紧密集成的一族可重用类(Class)的集

合。它大大简化了软件开发的难度,而且很容易与第三方组件无缝集成.

<b>.Net架构类库主要包括对一下编程模型的支持:1.控制台应用程序 2.脚本与宿主应用程序

3.Windows Form应用程序 4.asp.net应用程序 5.WebService应用程序.

五..Net支持的开发语言有哪些?.Net语言的互操作性是指什么?

<a>Net声称支持市面上20多种语言,但目前只有微软官方发布的C#,Visual Basic.Net,Managed C++,和

Jsript,其他厂商声称正在开发中的支持工具有COBOL,Eiffel,Perl,Smalltalk,Python。

<b>.Net语言的互操作性是指遵循CLR规范的语言在对象继承方面的支持,即用一种语言在.Net平台下开

发的类可在另一语言中重用,这通过一种称作微软中间语言MIL来实现,即语言编译器首先将该语言

编译成微软中间语言,再在相应平台下编译出本地代码。这一切都是在CLR的规范下进行的。

六 .Net与COM的关系是什么?.Net是否意味着COM的终结?

COM定义了组件对象间通信的二进制标准,.Net通过组件内置的类型系统提供了类似的机制,它为此提供

了另一个途经。.Net并不意味着COM的终结,但必将大大减少开发人员对COM的依赖。.Net 支持COM

和.Net组件之间的互操作性,实际上可通过Runtime Callable Wrapper(RCW)来实现在.Net中获取COM组

件,通过COM Callable Wrapper(CCW)来实现在COM中获取.Net组件。

七..Net的中间语言(IL)是什么?它在.Net平台中起什么作用?开发人员可以用中间语言(IL)编程吗?

.Net中的中间语言是指可以在普通语言运行时规范下,.执行时通过即时(Just In Time)编译器转化为本

地代码的,与CPU独立的一族指令集合。它在.Net平台中是实现语言互操作的一个核心环节,所有.Net平

台的语言都要先被编译成中间语言(IL)。程序员也可以直接利用中间语言(IL)来编程,但不推荐那样

做,中间语言对理解.Net对象某些行为和程序的调试很有帮助

八 ..Net中的自动垃圾收集是什么?它给.Net平台下的编程带来什么变化?

.Net垃圾收集器负责整个.Net运行时受管代码的内存分配与释放任务。它通过一定的优化算法来选择收

集的对象和时间。程序员只有在释放大量受管资源时可以进行立即强制垃圾收集,在释放非受管资源时

采用终止化(Finalize)操作来处理,需要在程序运行中释放的应该实现Dispose()方法,并明确调用。

其它时间将资源的回收交由.Net垃圾收集起来做。

九..Net的受管(Managed)代码与非受管(Unmanaged)代码指什么?他们的编码有什么区别?

.Net的受管代码(Managed Code)是指符合普通语言运行时(Common Language Runtime)规范,在内存中受

运行时代码代理进行内存管理,线程管理,远程管理,代码强制安全类型的代码。非受管代码指对内

存,文件,数据库等非受管资源进行操作的代码,他们通常不受运行时代码代理管理,是不安全的。对受

管代码的编程只需专注于编程的逻辑,对于内存等资源的管理交由普通语言运行时(Common Language

Runtime)来负责,而对非受管代码的编程,则要开发人员精心负责各种非受管资源的分配和回收工作。

最新文章

  1. Leetcode 笔记 116 - Populating Next Right Pointers in Each Node
  2. 【Spring实战】—— 12 AspectJ报错:error at ::0 can&#39;t find referenced pointcut XXX
  3. webpack入坑之旅(四)扬帆起航
  4. 远程连接RabbitMQ失败
  5. 菜鸟学JS(五)——window.onload与$(document).ready()
  6. 设置drawable图片
  7. python+selenium环境搭建
  8. php中fopen函数用法详解(打开文件)
  9. SQL Server自动化运维系列 - 监控磁盘剩余空间及SQL Server错误日志(Power Shell)
  10. express学习点滴- methodOverride
  11. python3自动下载优酷视频小程序
  12. OpenWRT UCI命令实现无线中继
  13. Android简易实战教程--第三话《自己实现打电话》
  14. C++实现递归版二分搜索算法
  15. Spring如何加载log4j配置文件
  16. [转] Understanding-LSTMs 理解LSTM
  17. activiti5/6 系列之--BpmnModel使用
  18. 简单定时器的Java实现
  19. swap函数
  20. POJ1417 True Liars 并查集 动态规划 (种类并查集)

热门文章

  1. 【python】对于程序员来说,2018刑侦科推理试卷是问题么?
  2. react native之使用 Fetch进行网络数据请求
  3. sql server 修改表字段
  4. MapServer教程3
  5. Android实现无标题栏全屏的三种方法
  6. VXcode学习
  7. Tomcat 的work 目录
  8. 用 MuGo 搭建 Go Engine 在 KGS 对战
  9. Java操作数据库之JDBC增删改查
  10. DAY 3 上午