Java 和 c++的区别 (做题过程中整理)

  1. JAVA没有指针的概念,被封装起来了,而C++有;
  2. JAVA不支持类的多继承,但支持接口多继承,C++支持类的多继承;
  3. JAVA不使用指针,不支持头文件,不支持宏定义,但是 JAVA可以动态分配内存
  4. Java有垃圾回收机制,C++则要主动释放内存
  5. C++比较适合一些底层处理,JAVA比较适合开发应用,可以是WEB,也可以是手机端的Android。
  6. C++支持操作符重载,JAVA不支持;JAVA的内存管理比C++方便,而且错误处理也比较好;C++的速度比JAVA快。
  7. 从语言层面,Java是完全的面向对象语言,而C++是多泛型语言,可以支持面向对象,结构化的,泛型编程等模式。
    其次,从实现层面,Java是将源文件编译为物理机无关的字节码,字节码在虚拟机上执行,当然,现在一般都有JIT技术。由于隔离了物理机,所以Java可以一次编译,到处运行。C++是编译链接为机器码,二进制移植性差。java的虚拟机以及它的垃圾收集机制导致程序的性能和可控性较差,而C++的性能较高。所以前者适用于中前端一些对性能要求不是很苛刻的场景,而后者适用于对性能要求较高的场景。

你可能感兴趣的:(java)