为什么计算机专业都是先学c和java的

更新时间:02-06 教程 由 陌流兮 分享

为什么计算机专业都是先学c和java的?

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()函数释放空间。

c语言和java的区别:

1、语法不同;

2、单文件的编译时间java比C语言快;

3、C语言可以直接操作内存,java不能直接操作;

4、C语言可以封装动态库,java不行;

5、C语言的代码不容易跨平台,java的代码容易跨平台;

6、C语言有指针,java没有指针;

7、C语言可以直接操作串口,java需要第三方jar包支持;

8、C语言的线程更加灵活,java的线程都已经封装好了;

9、C语言做单独功能,可以增加效率,java适用做web应用开发;

10、unix是C语言编写的,java也是C语言编写的;

11、JAVA做web开发的时候,已经有很多成型的框架技术,C语言很少,且需要处理底层内容,对应不熟悉计算机原理的开发者难度很大;

12、JAVA的开源包太多了,C语言也有但是偏少,而且面向某个业务应用领域的框架没java多;

声明:关于《为什么计算机专业都是先学c和java的》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2204917.html