当前位置 > 主页 > 万和大讲堂 >


浅谈Java与C++的优劣势分析比较 南京Java培训

2015-06-11 11:10

  当你想学一门计算机技术的时候,是否纠结到底应该学哪个?就拿Java培训和C++培训来说,要让你选择,你会怎么选呢?今天我们就一起比较分析一下Java和C++的优劣势:

  Java比C++

  好在:

  1.Java比C,C++简单,学起来比C\C++容易

  2.Java完全对象化,比如数组在Java中是一个对象,含有length这个属性;而不像C++中数组是一个指针。所以访问数组,Java都会进行边界检查,更安全,但牺牲了速度。同时因为Java中所有类都会继承Object这个基类,所以可以把几个好不相干的类用基类联系起来,比如放在同一个数组里。

  3.Java中没有指针这样不安全(虽然指针速度快)的概念。

  4.Java中有完善的内存管理机制,能自动垃圾回收,最大可能降低内存溢出的可能,同时提高编程效率。

  5.Java中有完善的异常机制(标准C++中不够完善)。

  6.java中保持数据时对象本身是在堆里,同时靠一在栈里的句柄与之连接。这个设计更合理。

  由以上几点可见Java更安全。

  8.Java标准库完整的多,相比之下C++除了一个STL(而且还超级难用)就没了,实际C++编程中需要大量使用第3方库。这很大程度上是因为Java有一些商业公司支持,更新速度快,而C++只有一个可怜的标准委员会,上一个C++标准版本还是C++98

  9.Java因为是把程序编译为字节码,运行时需要JVM把字节码再翻译为机器码,所以他跨平台,一次编译到处运行。但这也是他慢的根本原因。

  10.Java原生支持多线程(C++仅靠标准库办不到),原生的UI,如AWTSwing

  不好在:

  1.Java比C\C++慢。Java1.0比C慢20倍现在的Java1.6运行速度也只是C的一半。

  2.C++在继承和派生上比Java更灵活

  3.C++中可以直接插入汇编能直接操控底层硬件所以操作系统还是得用c写

  4.Java办的到C++一定办得到,C++办得到的Java则不一定。

  5.Sun被甲骨文收购了之后,Java的发展很受影响。

  6.C++编译的程序可以直接运行,Java需要安装JRE有几十MB,影响产品发布的用户体验。

  最后插一句,Java的一部分优势会随着C++0x的发布有所减弱。

最近开班 more>
  • Python基础班
  • Java全栈开发
  • 前端基础班
  • 软件测试
  • 云原生精英班
  • 云网预科班
  • CISP
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • HCIE-Datacom(HCIA,HCIP基础)
  • HCIP-Datacom(HCIA基础)
  • HCIA-Datacom(0基础)
  • OCM 12C
  • OCP 19C
  • RHCE 9.0
  • 随时开课
  • 12月26日
  • 随时开课
  • 12月4日
  • 12月16日
  • 12月9日
  • 12月21日
  • 1月6日
  • 12月30日
  • 12月16日
  • 12月21日
  • 12月7日
  • 12月7日
  • ——
  • 随时开课
  • 12月16日
    • 姓 名 :
    • 电 话 :
    • 课 程 :

技术交流群

  • Java大数据交流群560819979加入
  • Python技术交流群595083299加入
  • Oracle技术交流群595119011加入
  • Web前端技术交流群604697610加入
  • Huawei技术交流群482919361加入
  • Redhat技术交流群587875348加入
  • UI设计技术交流群511649801加入
  • Cisco技术交流群596886705加入
  • IT运维技术交流群605888381加入