【Java 和 C 语言的区别

原文:https://www . geesforgeks . org/Java 和 c 语言的区别/

以下是 Java 和 C 语言的一些区别。

c 比 Java 快得多

由于开销,Java 比 C 慢。

| C | Java 语言(一种计算机语言,尤用于创建网站) | | --- | --- | | c 是丹尼斯·m·里奇在 1969 年至 1973 年间开发的。 | Java 是詹姆斯·高斯林在 1995 年开发的。 | | 是一种过程编程语言。 | Java 是面向对象的语言。 | | c 更注重过程。 | Java 更面向数据。 | | c 语言是一种中级语言,因为机器级语言和高级语言之间存在差距。 | Java 是一种高级语言,因为使用编译器或解释器将代码翻译成机器语言。 | | c 是一种编译语言,它将代码转换成机器语言,以便机器或系统能够理解。 | Java 是一种解释语言,在 Java 中,代码首先被转换成字节码,然后字节码被 JVM (Java 虚拟机)执行。 | | c 一般分解成函数。 | Java 细分为对象。 | | c 编程语言可以用于系统编程,也可以用于应用程序编程。 | 在 Java 中并非如此。 | | c 不包含名为继承的属性,因为它不支持 OOPS,这对于代码的可重用性非常有用。因此,当一个人必须根据现实世界来联系事物时,C 是不适合的。 | Java 包含继承属性,这在代码重用中非常有用。 | | 内存分配可以通过 C 语言中的 malloc 来完成 | 内存分配可以通过 Java 中的一个新关键字来完成。 | | c 是一种低级语言。它对用户来说很难解释,但它对机器级代码有更密切的意义。 | Java 是一种高级语言,因为使用编译器或解释器将代码翻译成机器语言。 | | 在 C89 中,变量的声明在块的开头,但是在最新版本的 C99 中,我们也可以在任何地方声明变量。 | 我们可以在任何地方声明变量。 | | free 用于释放 c 中的内存。 | A compiler will free up the memory internally by calling the garbage collector.  | | c 不支持线程。 | Java 支持线程的概念。 | | c 语言支持指针。 | Java 不支持指针。 | | 它不是便携式的。 | 它是便携式的。 | | c 语言支持值调用和引用调用。 | 它只支持按值调用。 | | c 依赖于平台。 | Java 是独立于平台的。 | | 它支持基于用户的内存管理。 | 它在内部管理内存。 | | c 语言并不健壮,因为在编译和运行时不会进行严格的类型检查。 | Java 是健壮的。 | | 异常处理不能直接在 C 语言中实现,因此缺乏对程序正常流程的维护。 | Java 支持异常处理。 | | 它遵循自上而下的方法。 | Java 遵循自下而上的方法。 | | c 语言不支持重载功能。 | Java 支持方法重载,这有助于代码可读性。 | | 支持预处理程序。 | Java 不支持预处理程序。 | | c 不支持 OOPS 概念。 | Java 支持 OOPS 概念。 | | c 语言支持联合和结构数据类型。 | Java 不支持联合和结构。 | | 支持存储类。 | 而 Java 不支持存储类。 | | 它有 32 个关键词。 | 它有 50 个关键词。 | | C 语言支持 Go-to 语句。 | Java 不支持 go-to 语句。 | | c 支持虚拟关键词。 | Java 不支持虚拟关键字。 | | c 语言不支持重载功能。 | Java 支持方法重载,这有助于代码可读性。 | | C 的默认成员是公共的。 | Java 的默认成员是私有的。 | | 数据隐藏是通过在 c 语言中使用静态来完成的。 | 数据隐藏是通过在 Java 中使用 private 来完成的。 |