java与c#的区别??
发布网友
发布时间:2024-10-05 14:30
我来回答
共4个回答
热心网友
时间:2024-10-14 16:28
编程语言讲究的是思想!java与C#在思想是没任何区别的!
你要说根本的区别就是开源和非开源!你在eclipse里用F3可以看到源代码!但是VS里F12看到源代码也只是隐藏的!只看得到一些注释!
还有语法并不能叫区别!
热心网友
时间:2024-10-14 16:23
1. 源文件方面。C#可以在一个.cs 文件中。出现多个name sapce(命名空间,有些类似于pacakage),并定义多个类。C#包含有预处理指令。
2. 数据类型方面。
a) C#定义了struct(结构),不能是抽象的,也不能被继承,是值类型的。
b) C#没有基本类型的概念,全部是面向对象的类型,int是Int32的简写。
c) 在Java中const是保留字,final与C#中的const意思相同,C#中还有readonly允许运行时赋初值。
d) 字符串比较,C#中可以用=比较值,与Java一样用StringBuffer来减少内存开销。
3. 运算符方面。C#增加了Checked和Unchecked以绕过编译错误。比如“把一个long付给int32 ,如果高32为零 则不会出错,否则会有溢出错误,unchekced就是告诉编译器不要去管溢出,尽你可能转化”
4. 分支语句方面。在Java中goto是保留字。C#中switch中的case不会顺序执行,末尾必须有break或者goto关键字。
5. 循环语句好像没有什么不同的。
6. 访问修饰符方面。在范围放main,C#增加了internal和protected internal,前者表示只能从当前程序集内可见,即可以在编译时可Assembly的DLL或EXE,类似于JAR;后者表示对当前程序集或者从此包含类继承的类可见。Sealed相当于Java中的final关键字。
7. 方法方面。与Java相同,只有基本类型通过值传递,其他都是传递引用。不过C#也可以以引用的方式传递基本类型,利用ref关键字。而out关键字有些类似于Oracle存储过程,与ref的区别在于:方法忽略out参数初始值,方法必须为out参数赋值。
8. 属性方面。Getter和Setter的写法不太一样。
9. 继承方面。C#增加了base关键字以指向父类。C#中父类方法中具有virtual关键字的才可以被子类重写,重写时还需要声明override。与抽象类相同,abstract关键字也必须被override重写。C#中的接口不能声明常量,接口的属性只是表示Getter或Setter。
10. 事件。Java中没有(Java通过实现自定义侦听器类执行事件)。C#定义了类似于函数指针的委托来实现事件。
11. 运算符重载。Java中无。运算符重载必须为类的静态方法,重载==,其他判等操作也必许重载。
12. 异常方面。与Java非常相似,只是没有throws关键字,无须截获异常(当然要在程序主入口去截)。
13. C#增加了索引器,可以象访问数组一样访问类或结构。个人感觉就是少些几个字而已,还造成一定的困扰。
14. C#的Attribute要比Java的Annotation强很多。不过加上AOP后,这种动态功能Java也不错了。
15. 在C#中也可以直接使用指针,开辟或者回收内存,只是要使用两个关键字unsafe和fixed赞同0| 评论
热心网友
时间:2024-10-14 16:26
没太大区别。
热心网友
时间:2024-10-14 16:30
硬要说区别- -C#更多应用在WIN平台上的GUI应用,JAVA更多是WEB应用和移动设备应用
还有就是底层函数库的开放源码问题,JAVA开源的-.-
java与C#语法区别?
18.与Java不同,C#中的接口不能包含域(Field)。另外还要注意,在C#中,接口内的所有方法默认都是公用方法。在Java中,方法声明可以带有public修饰符(即使这并非必要),但在C#中,显式为接口的方法指定public修饰符是非法的。例如,下面的C#接口将产生一个编译错误。19.C#中的is操作符与Java中的in...
java与C#的区别在哪里?
3.数据类型:Java跟c#基本都差不多,但是Java的String类型的首字母必须大写,而c#中可以小写也可以大写,还有布尔型,Java中是boolean,c#中是bool。4.变量的命名:Java中可以用$符号,而c#中不可以使用。5.注释:Java比c#少一种“///”的文档注释。6.输出:c#有三种方式输出:Cosole.WriteLine(...
java与c#的区别??
10. 事件。Java中没有(Java通过实现自定义侦听器类执行事件)。C#定义了类似于函数指针的委托来实现事件。11. 运算符重载。Java中无。运算符重载必须为类的静态方法,重载==,其他判等操作也必许重载。12. 异常方面。与Java非常相似,只是没有throws关键字,无须截获异常(当然要在程序主入口...
JAVA 于C#的区别及联系!
其次是不同点:java开源,C#不开源。JAVA更偏向与B/S架构,C#在C/S架构上的优势更大些(手机端java安卓完胜目前的微软手机端)。安全性上,由于C#受一定的系统环境影响,java稍胜一筹。并发性,这点java可以完爆C#,weblogic,tomcat,jboss等主流服务器的性能完胜IIS系列。扩展性,对于中低级的来说ja...
c#和Java有什么区别
1、开发环境。C#用Visual Studio,而JAVA用MyEclipse;跨平台Java用虚拟机,C#用Framework;Java所有平台都支持,而C#只有Windows和Linux支持。很多网友认为C#语言比Java更先进,如在泛型和linq上,这只能说C#编程体验好。Sun初衷是把Java设计成一个跨平台的Runtime,而Microsoft只是把.Net做成Windows的一个...
C#和Java有什么区别和联系
C#与Java的区别如下:1.中间语言 当MSIL被编译成最终的机器码时,微软公司在如何选择上是非常灵活的。微软公司很谨慎的对外宣称说MSIL不是解释型的,而是被编译成机器码。因为开发人员都有这样一个观念:Java程序天生就比C程序运行慢,所以这暗示着基于MSIL的程序优于解释型的Java字节码。当然,既然C#和...
Java和c#开发语言的不同点
Java语言和C#语言非常相似,虽然内部会有很多区别,提供的API也不一样,但开发一个具体功能点的思路常用的都差不多,由于对比较新的技术和特性开发过程中接触不多,我所遇到的不同点包括:1、Java包的名字是和物理文件位置一一对应的, C#里命名空间可以随便写,并且编译出来的程序集也可以随便更改,...
c#和java哪个更好点。
JAVA语法和C#语法类似,一些关键字上有些区别。两者几乎是相通的。 JAVA有虚拟机可以跨平台,C#必须要在.NET FrameWork下运行。 JAVA: JAVA 是由SUN公司以C为蓝板研发的,本来开发的目的是为了作驱动编程。用以方便对各种电子设备的联网或者互联操作的语言,所以在设计初期就引入了许多在当时非常先进的思想——体积小(...
c#和java哪个更值得学?
语法差异:C#的语法相对更加直观和简洁,更接近于Python和JavaScript等脚本语言。Java的语法则相对繁琐,但更加严格和类型安全。平台偏好:C#是微软公司的开发语言,因此在Windows平台上更受欢迎。Java则是一种跨平台语言,可以在Windows、Linux、macOS等操作系统上运行。学习资源:Java的学习资源和生态系统更加...
JAVA C# 我感觉两种语言很像!
容易!我是先学java,然后再学C#的,我感觉java和C#差不多,语法也差不多!C#就多了一个命名空间!C#可以多继承接口,但是类不行,和java差不多。java只能单继承类,多继承接口。而他们都是面向对象编程,既然你学了C#,学java就容易了!祝你成功!