位置:北京优就业IT培训机构 > 学校动态 > Java 和 C 较大的不同是什么
c#和Java是两种编辑语言,应该除了都是编程语言外没有什么相同点。java比较广泛些是因为它的移植性比较好些。都是面向对象的编程语言,区别也很大哟,一句两句也说不清楚,C#的开发工具要好一些,可以用.net,java的开发工具就没有那么可视了。
c#设计者更注重开发人员的感受,为方便开发提率,他们愿意大费周章改善语言本身各方特性,不断加入语法糖,从泛型,nullable,隐式类型到lamada再到dynamic,awaitasyc等等都可看到其一直在围绕代码整洁,减少bug等实际的开发过程中问题来进行的改进,同时越来越智能的IDE也说明了这点。
java设计者则不同,他们的关注点在于java应用系统本身,更好地降低耦合,保持OOP是其始终坚持的。同时也应该不难发现,社区对提ava应用架构师提出的各类尖锐问题反馈总是较为及时,而对java应用开发者则相对冷淡些。
一、属性
java中定义和访问均要用get和set方法,可以不成对出现。
c#中是真正的属性,定义时get和set必须同时出现,房问时用.号即可。不用get,set
二、泛型不一样
Java泛型只是编译时的,但C#的泛型在运行时也被维持,而且适用于value types 和 reference types
三、两者的访问修饰符有一定区别
两者初始化(initialization)的顺序有一定不同。C#初始化变量后才调用父类的构造方法
Java 没有类似“properties”的东西,而是约定俗成为getter 和setter,Java 没有类似于"unsafe"的特性
面对同一问题采用不同处理方法的结果是,c#基于泛型后续衍生出了lamada,linq等一系列更能提高开发效率的语法利器,而java因有了泛型的强制约束使得java开源中间件变得更加稳定,同时可以看到后续的许多开源中间件产品体量也变得更大,功能也开始更加大胆。这也算是通过泛型确保类型一致带来的好处之一吧。
所以说,虽语法非常相似,但关注方向并不相同的两种语言至少目前来说区分优劣为时尚早了些,
但就趋势来说,c#的发展势头要更为强劲,不去关注两种语言本身,就平台而言,微软对c#的掌控力要优于java社区对java平台的掌控力,c#设计者在改造c#语言时不需要做出太多妥协,他们考虑较多的只是5.0如何向4.5兼容,4.5如何向4.0兼容,而java在发展的过程中每一步跨越需要考虑的则更多。
同时较要命的,java的一切设计都是牢牢基于面向对象的,然而从实际的开发经验来看,现实世界中的许多问题并不能单纯依靠面向对象来解决,牵强使用OOP给实际系统开发已经带来不少的负面影响。
尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/3140/news/454441/违者必究! 以上就是北京优就业IT培训机构 小编为您整理 Java 和 C 较大的不同是什么的全部内容。