登陆 / 注册
JAVA 学习手册 展开/折叠

C++与Java

阅读数:18

本篇将介绍一下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源代码的文档。
虚拟关键字C ++支持虚拟关键字,以便我们决定是否覆盖函数。Java没有虚拟关键字。我们可以默认覆盖所有非静态方法。换句话说,默认情况下,非静态方法是虚拟的。
无符号右移>>>  C ++不支持>>>运算符。Java支持无符号右移>>>运算符,在负数的顶部填充零。对于正数,它与>>运算符的作用相同。
继承树C ++总是创建一个新的继承树。 Java总是使用单个继承树,因为所有类都是java中Object类的子类。Object类是java中继承树的根。
硬件 C ++更接近硬件。Java与硬件的交互性不高。
面向对象 C ++是一种面向对象的语言。但是,在C语言中,单根层次结构是不可能的。Java也是一种面向对象的语言。但是,所有内容(基本类型除外)都是Java中的对象。它是一个单一的根层次结构,因为所有内容都是从java.lang.Object派生的。

        

 注意:

Java不支持像C ++这样的默认参数。

Java不支持像C ++这样的头文件。Java使用import关键字来包含不同的类和方法。

微信扫码登陆