编程语言大PK:Java和C++

233人已阅读 2018-08-21 17:23:54
导读 前面我们比较了Java和C语言,毕竟这两位是编程语言界的两位“老大哥”,其地位不容置疑,但是在一些方面作为C语言后辈的C++也是能和Java一争长短的,海文国际今天就来比较一番Java和C++。
设计类 编程类 数据类 其他

新闻详情

2018-08-21 17:23:54

编程语言大PKJava和C

  前面我们比较了Java和C语言,毕竟这两位是编程语言界的两位“老大哥”,其地位不容置疑,但是在一些方面作为C语言后辈的C++也是能和Java一争长短的,海文国际今天就来比较一番Java和C++。

  C++是面向内存编程,Java则是面向数据结构编程。
  C++里,内存是裸露的,可以拿到地址,随意徜徉,增了删了,没人拦你,等到跑的时候崩给你看。
  然而Java编程里,能操作的都是设计好的数据结构,array有长度,String不可变,每一个都是安全的,在内存和程序员之间,隔着JVM,像是*住了边边角角的房间,随便小孩折腾,不会受伤。
  Java程序员是孩子,嚷嚷要这个那个,玩完了就丢,JVM是家长,买买买,还要负责收拾。有的孩子熊点,屋子很乱,收拾起来费劲,但房子还在。
  C++程序员是神,操纵着江河湖海,日月星辰,但能力越大,责任越大,万一新来的神比较愣,手一滑,宇宙就退出了。
  新手写C++,像是抱着一捆指针,在浩瀚的内存中裸奔。跑着跑着,有的针掉了,不知踪影,内存就泄露了;跑着跑着,突然被人逮住,按在地上打的error纷飞,内存就越界了;终于到了,舒了口气,把针插在脚下,念出咒语,“delete”,系统就崩溃啦!
  Java编程是一门你不需要讲究,也没法讲究的语言。很多c++*人士写不好java编程或者写的很难受,就是因为他们想很多但是又没法实现哇。
  独孤九剑,摘叶飞花皆可伤人。手中无剑,心中有剑,用龙泉还是莫邪有什么区别?用神兵还是树枝有什么区别?
  不过大宋步兵还是不能用树枝。
  对于优秀的Java程序员来说,语法,语言特性,编译器,运行时环境都不是问题。不过于此相反的是,对于不优秀的程序员,这些通通都是问题。
  最简单的,去掉“指针”,对于独孤九剑式的程序员,并没有什么开发效率的提升,但是对于大宋步兵式的程序员,就少了很多坑,这就带来了开发效率的提升。我们当然要追求当独孤九剑,不过,当你做大宋将军时,*别把你的士兵都当独孤九剑那么用,铁定死的很惨。
  程序娃的常规认识是"C++的运行效率高而Java的开发效率高(相对而言)"。但在某些场景下Java的性能已经不输C++啦,有的即使落后,但感知差距也并不大。而现代C++有了更多方便的语法和工具,开发效率也是有了很大的提高,所以了解语言之间的差异更多的还是让我们对技术实现的原理和深度有了更高层面的认识,有了更好的视野而已。

 海文国际多年来专注于IT人才的培养与输送,致力于为中国的互联网IT行业输送高端技术人才。海文国际以”求真,务实”的严谨作风,始终致力于为中国培养实战型,紧缺型和创新型的信息化人才。

上一篇: 编程语言大PK:Java和C语言 下一篇: Java编程当中的编译与反编译

相关文章

推荐课程

查看全部课程
石家庄海文国际

石家庄海文国际

新华校区

查看全部校区 进入官方主页