Java和C有什么区别?

如题所述

Java和C都是指令式语言(Imperative Language),不同的是Java有面向对象(OO)成分在里面,而C是完全面向过程的,C的高级版本C++、C#支持面向对象。

另外一个不同是,Java跨平台,既不同的操作系统都可以通过JVM来解释Java程序,而C、C++、C#则是与平台相关的,有些指令只在某些操作系统中才能执行。具体原因是,Java是解释型语言,所有代码都会翻译成统一的、与系统无关的bytecode,然后放到JVM上运行;而C是编译式语言,代码要先通过编译器转换成与系统相关的中间代码,然后才能运行。

再一个不同是,Java不支持系统调用,既无法与操作系统进行交互,这是由它跨平台的特点决定的,而C则可以调用系统中的指令,如fork()。这也就是为什么Java中只有线程(Thread)概念而没有进程(Process)概念,而C两者均有。

再者,Java无法对内存进行控制,而C则可以通过指针对内存进行人为分配。
还有一点,Java有Gabbage Collection机制,可以自动回收不再使用的空间,而C则要用free()函数释放空间。

总的来说,Java比较容易上手,学得快,但对于了解编程语言来说帮助不如C大。
当然Java和C之间的区别还有很多很多。
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-05-25
Java是面向对象的语言,C是面向过程的语言。C是中级语言,Java是高级语言
相对来说Java比较好学!!因为Java通俗,易懂一些!

Java语言和C语言有什么不同
1、设计思路不同:C语言是面向过程的语言,执行效率高;Java是面向对象的语言,执行效率比C语言低;2、通用性不同:C语言不能跨平台;java可以跨平台直接移植,只要有安装Java虚拟机(JVM)就可以了;3、语法不同:(1)、基本数据类型不同:c语言是int short long char float double 还有一些特殊类型...

c语言跟java有什么区别
1、应用领域不一样 C语言主要用于驱动开发、操作系统、内核开发,嵌入式(单片机)、交换机、路由器等网络设备的开发;java主要是企业应用开发,包括服务器端开发、嵌入式领域、大数据技术、网站领域等。2、基本数据类型不一样 c语言基本数据类型主要有int、short、long、char、float、double,还有结构体、...

c语言和JAVA语言有什么区别?
两者的区别:1、面向对象Java的面向对象的指向性很明显,而C则是一个正规的结构化语言。 Java中有一个字符串类String, 通过调用 String.length()就可以了解字符串的长度,但是在C语言中,则需要使用函数strlen(str)来得到字符串(字符数组)的长度。2、名称空间Java通过包(package)来实现名称空间,在...

java和c的异同(java与c语言的异同)
Java和c语言的区别C语言是经典的面向过程的编程语言,编程入门一般都学C语言以了解编程以及锻炼逻辑思维能力,在一些跟硬件比较紧密的编程中也经常用到。\\x0d\\x0a\\x0d\\x0aC++是在C语言的基础上加入了面向对象的概念,成为混合型面向对象语言,功能强大,但难度也大。\\x0d\\x0a\\x0d\\x0aJava是...

c语言和java的区别
1. 语法差异:C语言和Java的语法结构存在本质区别。C语言具有较为底层的控制能力,而Java提供了更高级的抽象。2. 编译速度:在编译单个文件时,Java通常比C语言快,因为Java拥有更高效的编译器和即时编译(JIT)机制。3. 内存操作:C语言允许直接访问和操作内存,Java则通过内存管理器来处理内存,从而...

C语言和JAVA有什么区别?
1、语法类似:由于Java可以算是从C++发展而来的,因此Java与C语言的语法比较类似 2、编程的熟练程度就是对语言程序库的掌握程度:从某种程度上来说,编程语言都是由语法和相应的程序库所构成,Java有自身的类库,C语言则有标准库。所谓的编程,就是使用与语法来调用和组合程序库中的函数。不同的地方:...

c语言和java的区别是什么?
1、设计思路不同:C语言是面向过程的语言,执行效率高;Java是面向对象的语言,执行效率比C语言低;2、通用性不同:C语言不能跨平台;java可以跨平台直接移植,只要有安装Java虚拟机(JVM)就可以了;3、语法不同:(1)、基本数据类型不同:c语言是int short long char float double 还有一些特殊类型...

c语言和Java有什么区别?
java和c语言两者的区别如下:1、C语言是面向过程的语言,执行效率高;Java是面向对象的语言,执行效率比C语言低;2、C语言的安全性不如Java,C语言没有Java的垃圾回收机制,申请的空间要手动释放。Java的通用性好,可以跨平台直接移植,只要有安装Java虚拟机(JVM)就可以了。3、在速度上,C语言编写的...

c和java的区别
c和java的区别:应用领域、语言特征、复杂程度不同。1、应用领域 java基本可以称得上是“全场景”的编程语言,不论是网站开发,还是安卓开发,还是游戏开发等等,这些领域都不在java话下。而c语言就比较有局限性了,它更多的应用在物联网的嵌入式开发,以及操作系统上。从这个角度来看,学习java后的就业...

c语言与java语言有哪些区别?
C语言和Java语言是两种不同的编程语言,它们有以下几个方面的区别:1. 应用范围:C语言主要用于系统编程、操作系统、嵌入式系统等方面,而Java语言则广泛应用于Web开发、移动开发、大型企业级应用开发等方面。2. 语法:C语言是一种过程化语言,强调对计算机底层硬件的控制,其语法比较简单;Java语言则是一...

相似回答