天天看点

C ++和java编程语言有什么区别?

Java和C ++都支持面向对象编程,但它们之间存在差异。首先,Java是一种纯面向对象的编程语言; 因此,一切都是Java中的一个对象(单根层次结构,因为一切都从中衍生出来java.lang.Object)。相反,在C ++中没有这样的根层次。C ++支持程序和面向对象编程; 因此,它被称为混合语言。

Java C ++

Java不支持指针,模板,联合,运算符重载,结构等。Java语言启动程序最初表示“无指针!”,但是当许多程序员质疑如何在没有指针的情况下工作时,启动程序开始说“限制指针”。支持它所谓的“参考”。参考文献很像C ++语言中的指针,但是不能对Java中的指针执行算术运算。引用有类型,它们是类型安全的。这些引用不能被解释为原始地址,不允许不安全的转换。 C ++支持结构,联合,模板,操作符重载,指针和指针算术。

如果你想学习Java可以来这个群,首先是五三二,中间是二五九,最后是九五二,

想学习C/C++可以来这个群,首先是三三零,中间是八五九,最后是七六六,里面有大量的学习资料可以下载。

Java支持自动垃圾收集。它不支持像C ++那样的析构函数。 C ++支持析构函数,当对象被破坏时,它将被自动调用。

Java不支持条件编译和包含。 条件包含(#ifdef #ifndef类型)是C ++的主要特征之一。

Java已经内置了对线程的支持。在Java中,有一个Thread类继承来创建一个新线程并覆盖该run()方法。 C ++没有内置的线程支持。C ++依赖非标准第三方库进行线程支持。

Java不支持默认参数。Java中没有范围解析运算符(:)。方法定义必须始终发生在类中,因此也不需要对范围进行解析。 C ++支持默认参数。C ++具有范围解析运算符(:),用于定义类之外的方法,并且访问同一个局部变量同样存在的范围内的全局变量。

Java 中没有goto语句。关键字const并goto保留,即使它们不被使用。 C ++有goto语句。但是,使用goto语句不是好的做法。

Java不提供多重继承,至少与C ++不同。 C ++确实支持多重继承。该关键字virtual用于解决多重继承过程中的歧义,如果有的话。

Java中的异常处理是不同的,因为没有析构函数。另外,在Java中,如果函数声明它可能会引发异常,则必须定义try / catch。 在C ++中,即使函数抛出异常,也可能不包括try / catch。

Java有方法重载,但没有操作符重载。该String班确实使用+和+=运营商连接字符串和String表达式中使用自动类型转换,但是这是一个特殊的内置的情况下。 C ++支持方法重载和操作符重载。

Java内置支持文档注释(/* … /); 因此,Java源文件可以包含自己的文档,通常由单独的工具读取,javadoc并重新格式化为HTML。这有助于以简单的方式维护文档。 C ++不支持文档注释。

Java大多数部分被解释,因此平台独立。 C ++生成对象代码,相同的代码可能不会在不同的平台上运行。