易百教程

2、C++和Java有什么区别?

C++和Java的区别,如下表中列出 -

比较索引 C++ Java
平台无关 C++ 是平台相关的。 Java 是平台无关的。
主要用于 C++主要用于系统编程。 Java主要用于应用程序编程。它广泛用于窗口、基于Web、企业和移动应用程序。
设计目标 C++ 专为系统和应用程序编程而设计,它是 C 编程语言的扩展。 Java 被设计和创建为打印系统的解释器,但后来扩展为支持网络计算。它的设计目标是易于使用并可供更广泛的受众使用。
Goto语句 C++ 支持 goto 语句 Java 不支持 goto 语句。
多重继承 C++ 支持多重继承。 Java 不支持通过类进行多重继承。可以通过java中的接口来实现。
运算符重载 C++ 支持运算符重载。 Java 不支持运算符重载。
指针 C++ 支持指针。 可以用 C++ 编写指针程序。 Java 内部支持指针。但是不能在 java 中编写指针程序。这意味着java在Java中限制了指针支持。
编译器和解释器 C++ 仅使用编译器。 C++ 是使用将源代码转换为机器代码的编译器编译和运行的,因此 C++ 是平台相关的。 Java同时使用编译器和解释器。 Java 源代码在编译时被转换为字节码。解释器在运行时执行这个字节码并产生输出。 Java 被解释这就是它独立于平台的原因。
按值调用和按引用调用 C++ 支持按值调用和按引用调用。 Java 仅支持按值调用。 java中没有引用调用。
结构和联合 C++ 支持结构和联合。 Java 不支持结构和联合。
线程支持 C++没有对线程的内置支持。它依赖第三方库来支持线程。 Java有内置线程支持。
文档注释 C++ 不支持文档注释。 Java 支持文档注释 (/** ... */) 为 Java 源代码创建文档。
virtual关键字 C++ 支持虚拟关键字,因此可以决定是否覆盖函数。 Java 没有 virtual 关键字。可以默认覆盖所有非静态方法。换句话说,非静态方法默认是虚拟的。
无符号右移 >>> C++ 不支持 >>> 运算符。 Java 支持无符号右移 >>> 运算符,该运算符在负数的顶部填充零。对于正数,它的工作方式与 >> 运算符相同。
继承树 C++ 总是创建一个新的继承树。 Java 总是使用单一继承树,因为所有类都是 Java 中 Object 类的子类。对象类是继承的根 java中的树。
硬件 C++ 更接近硬件。 Java 与硬件的交互性不强。
面向对象 C++ 是一种面向对象的语言。但是,在 C 语言中,单根层次结构是不可能的。 Java也是面向对象的语言。但是,一切(基本类型除外)在 Java 中都是对象。它是一个单一的根层次结构,因为一切都派生自 java.lang.Object