c#与java的异同比较-语法级

c#与java的异同比较-语法级

ID:13660669

大小:30.86 KB

页数:14页

时间:2018-07-23

c#与java的异同比较-语法级_第1页
c#与java的异同比较-语法级_第2页
c#与java的异同比较-语法级_第3页
c#与java的异同比较-语法级_第4页
c#与java的异同比较-语法级_第5页
资源描述:

《c#与java的异同比较-语法级》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、C++、C#、Java的异同C#(C-Sharp)是Microsoft的新编程语言,被誉为“C/C++家族中第一种面向组件的语言”。然而,不管它自己宣称的是什么,许多人认为C#更像是Java的一种克隆,或者是Microsoft用来替代Java的产品。事实是否是这样的呢?一、C#、C++和JavaC#的语言规范由Microsoft的AndersHejlsberg与ScottWiltamuth编写。在当前Microsoft天花乱坠的宣传中,对C#和C++、Java作一番比较总是很有趣的。考虑到当前IT媒体的舆论倾向,如果你早就知道C#更接

2、近Java而不是C++,事情也不值得大惊小怪。对于刚刚加入这场讨论的读者,下面的表1让你自己作出判断。显然,结论应该是:Java和C#虽然不是孪生子,但C#最主要的特色却更接近Java而不是C++。表1:比较C#、C++和Java最重要的功能功能C#C++Java继承(C#)单继承,可实现多个接口(C++)支持多继承,(JAVA)单继承,可以实现多个接口接口实现(C#)通过“interface”关键词(C++)通过抽象类(JAVA)通过“interface”关键词内存管理(C#)由运行时环境管理,使用垃圾收集器(C++)需要手工管理(

3、JAVA)由运行时环境管理,使用垃圾收集器指针(C#)支持,但只在很少使用的非安全模式下才支持。通常以引用取代指针(C++)支持,一种很常用的功能。(JAVA)完全不支持。代之以引用。源代码编译后的形式(C#).NET中间语言(IL)(C++)可执行代码(JAVA)字节码(.class)单一的公共基类(C#)是Object(C++)否(JAVA)是Object异常处理(C#)提供异常处理(C++)返回错误(JAVA)提供异常处理。了解上表总结的重要语言功能之后,请继续往下阅读,了解C#和JAVA的一些重要区别。二、C#与Java语言规

4、范的比较2.1、简单数据类型简单数据类型(Primitive)在C#中称值类型,C#预定义的简单数据类型比Java(4类8种)多。例如,C#有unit,即无符号整数。表2列出了所有C#的预定义数据类型:表2:C#中的值类型类型说明object所有类型的最终极的基类string字符串类型;字符串是一个Unicode字符的序列sbyte8位带符号整数short16位带符号整数int32位带符号整数long64位带符号整数byte8位无符号整数ushort16位无符号整数uint32位无符号整数ulong64位无符号整数float单精度浮点

5、数类型double双精度浮点数类型bool布尔类型;bool值或者是true,或者是falsechar字符类型;一个char值即是一个Unicode字符decimal有28位有效数字的高精度小数类型2.2、常量Java中用staticfinal修饰符。在C#中,常量可以用const关键词声明。publicconstintx=55;此外,C#的设计者还增加了readonly关键词。如果编译器编译时未能确定常量值,你可以使用readonly关键词。readonly域只能通过初始化器或类的构造函数设置。2.3、公用类的入口点在Java中,公

6、用类的入口点是一个名为main的公用静态方法。main方法的参数是String对象数组,它没有返回值。在C#中,main方法变成了公用静态方法Main(大写的M),Main方法的参数可以是一个String对象数组,也可以为空,返回值可以为空,也可以是int,如下面的原型声明所示:publicstaticvoidMain(String[]args)但是,C#的Main方法不局限于此。如果不向Main方法传递任何参数,你可以使用上述Main方法的一个重载版本,即不带参数列表的版本。也就是说,下面的Main方法也是一个合法的入口点:publ

7、icstaticvoidMain()另外,如果你认为有必要的话,Main方法还可以返回一个int。例如,下面代码中的Main方法返回1:usingSystem;publicclassHello{publicstaticintMain(){Console.WriteLine("Done");return1;}}与此相对,在Java中重载main方法是不合法的。2.4、switch语句在Java中,switch语句只能处理整数。但C#中,switch语句还能够处理字符变量。请考虑下面用switch语句处理字符串变量的C#代码:usingS

8、ystem;publicclassHello{publicstaticvoidMain(String[]args){switch(args[0]){case"老板":Console.WriteLine("早上好!我们随时

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。