日期:2014-05-18  浏览次数:20851 次

请问C#与.net framework 之间有什么联系?
我知道c#与java一样,是一种编程语言,那么.net framework与c#之间有什么联系呢?网上有的人说.net framework类似于java中的jar包,相当于类库,而有的人却说.net framework类似于java中的虚拟机,C#写的程序需要在.net framework上运行,到底哪种说法正确呢?

------解决方案--------------------
.net framework是一种框架,c#是一种语言,他的运行基于.net framework框架
------解决方案--------------------
我觉得那两种说法都对。。。
------解决方案--------------------
鱼和水
------解决方案--------------------
.net framework是一种框架,c#是一种语言,

.net framework可包含C,C#等
------解决方案--------------------
网上有的人说.net framework类似于java中的jar包,相当于类库
这个指的是FCL 全称Framework Class Library, 你可以理解为是System命名空间下面的所有类库,这些类是被标准化的 对应的 C,C++等等也有标准化的类库 欧洲有个组织专门维护这些东西叫ECMA什么的
而有的人却说.net framework类似于java中的虚拟机
这个指的是CLR Common Language Runtime, .net程序运行于CLR之上 具体来讲 应该是c#,vb.net等语言写的程序编译后产生的IL代码运行于CLR之上,CLR维护程序的元数据,运行时通过JIT,just in time把这些IL代码编译为本地代码 也就是1010101这些二进制代码 相应的 针对不同CPU,JIT可以产生优化的代码
整个.net的包含了上面谈到的两者 但其本身远远不止这两者
探讨
我知道c#与java一样,是一种编程语言,那么.net framework与c#之间有什么联系呢?网上有的人说.net framework类似于java中的jar包,相当于类库,而有的人却说.net framework类似于java中的虚拟机,C#写的程序需要在.net framework上运行,到底哪种说法正确呢?

------解决方案--------------------
你用C#写的代码,必须在安装Framework的机器上才能运行。
ASP.NET是在服务器端运行的,所以只要服务器上安装FrameWork就可以了。
------解决方案--------------------
看下我以前的帖:
http://topic.csdn.net/u/20100324/15/23e8200d-b0ed-4237-a492-36d84eb4e720.html
3楼和20楼的详细解说