C#简介:VC的NET,JAVA的KILLER?
第一篇 C#简介:VC的NET,JAVA的KILLER?
C#是在C,C++的基础上发展起来的,是一种有网络风格,面向对象的跨语言平台的程序设计语言。C#的编译器输出的代码,可以称为‘受控代码’(MANAGED CODE),受控代码并不能在目标机器上直接运行,它形成了一种文件,包含了与传统计算机语言不同的语言:中间语言(INTERMEDIATE LANGUAGE)。同时,C#编译器又在该文件的各个数据类型前面直接插入了表示其相应的变化属性(METADATA),形成了一种可以移植执行的文件。公共语言环境(COMMON LANGUAGE RUNTIME),再对中间语言IL代码进行编译,最终产生可以在目标机器上执行的本地二进制代码。
C#没有了C++的一些特性:没有宏,模板,多重继承,指针及许多重载的操作符,当然还没有全局函数,全局变量,常量。每一样东西都得放在一个类中。你看,这些其实和JAVA的完全一样!
当然还有些不一样的地方:整个C#的类模型是建立在.NET虚对象系统(VIRTUAL OBJECT SYSTEM)之上的。对象模型是基础结构(INFRASTRUCTURE)的一部分。C#遵守CLS, 在此基础上,具有良好的兼容性:可以访问老的COM组件对象,OLE自动化,以及本地的API (它们通常是C格式的DLL)。在开发者需要使用指针时,可以通过非安全代码,不运行在缺省的安全模式,来使用它们。在这种模式下,你得管理好自己的内存,保证类型的安全。
了解了C#的大致原理,我们可以看出,它能够实现各种计算机语言的集成,面向网络应用,从而最终构成微软的.NET构架。同时,将我们的软件开发带入组件化的天地。