导航:首页 > 编程语言 > c和java区别

c和java区别

发布时间:2023-04-15 23:29:13

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之间的区别还有很多很多。

② c语言与java语言的去区别

C语言是面向过程的语言,而JAVA是面向对象的语言。java相对于c语言而言,去掉了指针等容易出错的功能, 具体如下: Java没有预处理命令. Java用static final来取代C中的常量定义. Java没有全局变量. Java基本数据类型的size是确定的,而C中基本数据类型..

③ c语言和java的区别

从概念上看,C语言是一门面向过程、抽象化的通用程序设计语言;Java是一门面向对象编程语言,而Java语言是从C语言衍生而来,它吸收了C++语言的各种优点,并且摒弃了C++里难以理解的多继承、指针等概念。从概念可以看出C语言相当于Java的基础语言,学完C再学Java会更容易。

从应用领域上,C语言和Java的应用领域几乎没有重合。因为随着这几年Java、web、PHP等语言的出现,它们凭借比C更简洁的、更安全的性能快速崛起,抢占了大量的市场。目前因为Java有完善的框架,在多线程、高并发方面有着较好的稳定性,所以Java主要应用于企业级应用开发、大型系统开发等领域。而C语言由于编程的复杂性,退守到了系统级别语言,而且因为想要系统级软件可以发挥出机器的功能,它的底层核心就需要用C/C++来编写,所以C语言主要应用于软件工业。

④ c语言和java的区别

相同的地方:
1、语法类似:
由于Java可以算是从C++发展而来的,因此Java与C语言的语法比较类似
2、编程的熟练程度就是对语言程序库的掌握程度:
从某种程度上来说,编程语言都是由语法和相应的程序库所构成,Java有自身的类库,C语言则有标准库。所谓的编程,就是使用与语法来调用和组合程序库中的函数。
不同的地方:
1、内存管理
在Java中,基本不用考虑内存的问题,如果想用一个对象,new一个就可以,这个过程的背后则是JRE为对象分类的一定内存,当JRE发现你不再使用这个对象的时候,他就会自动回收内存,也就是说你只管借东西,不用管归还,因为与有人当你的跟班,在你不使用的时候就把东西归还了,不过这个过程还是有的,只不过是JRE作的而已。
但是C则不同,如果你想用,你可以用malloc之类的方法申请内存,当你使用完了,因为没有跟班的,你需要自己把这块内存归还回去,也就是调用free方法来完成这个任务。由于需要显式的归还内存,因此当一个函数需要将一块内存返回给调用者的时候,问题就比较复杂了,不如面向对象和具有内存回收功能的Java那么直观了。对于这个问题,在C语言中,有几种解决方案:
(1)
在调用者中先分配好内存,作为参数传入到被调用的函数中
(2)
在被调用的函数中分配,使用完后在调用者中释放
(3)
在被调用函数中使用static变量,可以将该变量返回
2、面向对象
Java的面向对象的特点很明显,而C则是一个地道的结构化语言。
Java中有一个字符串类String,
通过调用
String.length()就可以知道字符串的长度,但是在C语言中,则需要调用函数strlen(str)来得到字符串(字符数组)的长度。由于C不是面向对象的语言,也就没有this的概念,因此当使用一个与某个“东西”相关的函数时,就需要不厌其烦的将代表这个“东西”的变量作为参数传递进去。
3、名称空间
Java通过包(package)来实现名称空间,在C语言中,所有的函数都处于同一名称空间,也就是没有名称空间,因此就会很多程序提供的api接口函数都有一个前缀,例如MYSQL的mysql_init(),
mysql_real_connect(),
mysql_real_query()等函数名称前面的mysql_。
给你找的资料。
希望对你有所帮助。。

⑤ C语言和JAVA有什么区别

简单来说:

  1. 一个面向过程,一个面向对象

2.一个不可移植,一个是可移植

3.一个有可直接操作内存,一个不可直接操作内存

4.一个垃圾回收要程序员手动进行,一个自动垃圾回收。

5.一个是跨平台,一个不跨平台

往复杂说:

从概念上看,C语言是一门面向过程、抽象化的通用程序设计语言;Java是一门面向对象编程语言,而Java语言是从C语言衍生而来,它吸收了C++语言的各种优点,并且摒弃了C++里难以理解的多继承、指针等概念。从概念可以看出C语言相当于Java的基础语言,学完C再学Java会更容易。

从应用领域上,C语言和Java的应用领域几乎没有重合。因为随着这几年Java、web、PHP等语言的出现,它们凭借比C更简洁的、更安全的性能快速崛起,抢占了大量的市场。目前因为Java有完善的框架,在多线程、高并发方面有着较好的稳定性,所以Java主要应用于企业级应用开发、大型系统开发等领域。而C语言由于编程的复杂性,退守到了系统级别语言,而且因为想要系统级软件可以发挥出机器的功能,它的底层核心就需要用C/C++来编写,所以C语言主要应用于软件工业。

从应用领域看学Java比学C语言前景会更好,因为Java的应用领域比较广,各大公司更多也是招聘Java开发人才。不过你还忽略了一点就是学习难度,Java的学习难度比C语言要大一些,学习门槛比C语言也高。所以如果你本科以上学历,小编建议你学习Java,而如果你0基础、学历也高的话可以选择学C语言,学完C语言后如果你还想学Java可以再继续学Java,学完C再学Java更简单。

阅读全文

与c和java区别相关的资料

热点内容
华为OGT配置文件怎么删除 浏览:316
黑色微信是什么app 浏览:838
部落要塞建筑升级 浏览:488
一个网站能收获多少钱 浏览:963
linux提取文件的两列 浏览:191
c盘垃圾文件放哪里 浏览:757
ec1308网络机顶盒怎么设置 浏览:337
有什么淘宝优惠券app 浏览:961
淄博周村编程怎么样 浏览:10
微擎数据库结构 浏览:195
电工编程和编程哪个难 浏览:471
戴尔笔记本升级主板bios设置密码 浏览:132
微信夫妻情感交流群 浏览:73
word提取1000个文件名 浏览:961
ug编程后怎么过切 浏览:295
ipad上微信文件下载到哪里 浏览:484
电脑游戏目录在哪文件 浏览:95
股票哪里会用到数据分析 浏览:218
数据分析怎么做编程 浏览:664
精仿苹果好还是三星好 浏览:995

友情链接