亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> java

C++ 与 JAVA:有什么区别?

什么是 C++ 语言?

C++ 是一种计算机编程语言,它包含了 C 编程语言以及 Simula67(第一个面向对象语言)的特性。 C++引入了类和对象的概念。

它封装了高级和低级语言特性。因此,它被视为一种中级语言。早些时候它被称为“C with classes”,因为它具有 C 语言的所有属性。

什么是 Java 语言?

Java 是由 Sun Microsystems 开发的编程语言。一个小型软件开发团队开发了这种语言。他们被称为绿色团队,他们于 1991 年发起了 Java 语言。

C++ 的历史

C++ 语言由 AT&T 贝尔实验室的 Bjarne Stroustrup 开发。 Stroustrup 是 C 的坚定支持者和 Simula67 的崇拜者。他想结合两种语言的精华。他的目标是创建一种支持面向对象编程特性的语言,并且仍然保留 C 的强大功能。这导致了 C++。

Java 的历史

Java 语言最初称为 OAK。最初,它是为处理设备和机顶盒而开发的。橡树是一个巨大的失败。因此,在 1995 年,Sun 将名称改为 Java 并修改了语言以利用蓬勃发展的万维网开发业务。

后来,在 2009 年,甲骨文公司收购了 Sun Microsystems,并拥有了 Sun 的两个关键软件资产:Java 和 Solaris。

主要区别:

<中心>

<图>

C++ 和 Java 的区别

参数 C++ Java
关系 类名和文件名之间没有严格的关系。在 C++ 中,头文件和实现文件用于特定的类。 强制执行严格的关系,例如,PayRoll 类的源代码必须在 PayRoll.java 中。
输入机制 I/O 语句使用 in 和 cout,例如 in » x; cout« y; I/O 输入机制非常复杂,因为它一次读取一个字节(System.in)。输出很简单,例如System.out.println(x);
编译器和解释器 C++ 只支持编译器 Java同时支持编译器和解释器
与其他语言的兼容性 与 C 源代码兼容,但某些特殊情况除外。 不向后兼容任何以前的语言。语法受 C/C++ 影响。
访问控制和对象保护 提供持续保护的灵活模型 繁琐的模型鼓励弱封装。
概念 一次编写,任何地方编译 一次编写,到处运行
支持编程类型 允许过程式编程和面向对象的编程。 支持面向对象的编程模型。
接口 允许直接调用本机系统库。 仅通过 Java Native Interface 和最近的 Java Native Access 调用
内存管理 程序员可以访问 系统控制
根层次结构 C++ 没有这样的根层次结构。 C++ 支持过程和面向对象的编程;因此,它被称为混合语言。 Java 是一种纯面向对象的编程语言。那是。为什么它遵循单根层次结构。
最佳功能 C++ 支持面向对象的特性过程式编程特性。 Java 支持自动垃圾回收。它不像 C++ 那样支持析构函数。
Goto 语句 C++ 有一个 goto 语句。虽然,使用 goto 语句并不理想。 Java 没有 goto 语句。关键字 got 和 const 即使不使用也是保留的。
多重继承 C++ 提供多重继承。关键字 virtual 用于解决多重继承期间的问题(如果有)。 Java 不提供多重继承。
作用域解析运算符 C++有范围解析操作符(: :) 它用于定义类外部的方法,并在局部变量也存在同名的范围内访问全局变量。 无范围解析操作符(: :) 在爪哇。方法定义必须出现在一个类中,因此不需要范围解析。
支持方式 C++同时支持方法重载和运算符重载 Java 只支持方法重载。它不支持运算符重载。
便携性 必须为平台重新编译源代码;因此代码不可移植。 字节码类可转移到特定平台的 JVM。
类型语义 在原始类型和对象类型之间保持一致。 原始类型和对象类型不同。
主要是低级功能 用于高级服务的大量课程。
运行时错误检测 程序员的责任。 系统责任。
函数和数据 函数和数据可能存在于任何类之外,全局和命名空间范围都可用。 所有函数和数据都存在于类中;包范围可用。
平台 C++ 程序依赖于平台。它们需要针对特定​​平台进行编译。 Java 程序是平台无关的。 Java 程序是为 Java 虚拟机 (JVM) 编写的。它无需重新编译即可运行。
运行时错误检测 在 C++ 中,检查错误是程序员的责任。 检查程序中的错误是系统的责任。
指针 C++ 支持指针。 Java 仅对指针提供有限的支持。
结构 它支持结构。 它不支持任何结构。
联合 C++ 支持联合。 Java 不支持联合。
对象管理 C++ 借助 new 和 delete 关键字支持手动对象管理。 Java 非常依赖自动垃圾回收。它不支持析构函数。

java

  1. 现代 C++ API 的新增功能
  2. 物联网低功耗蓝牙 (LE) 与 XLE:有何不同?
  3. Java中的接口与抽象类:有什么区别?
  4. 交流发电机和直流发电机的区别
  5. 停电与停电:有什么区别?
  6. 热塑性塑料与热固性塑料:有什么区别?
  7. 直流电机与交流电机:有什么区别?
  8. 金属加工和金属焊接有什么区别?
  9. 钢角与铝角:有什么区别?
  10. 纯水刀切割与磨料水刀切割 - 有什么区别?
  11. 呼吸空气与压缩空气——有什么区别?
  12. PSI、PSIA 和 PSIG:有什么区别?