java的效率高,还是c的效率高?

Python012

java的效率高,还是c的效率高?,第1张

C的运行效率明显要比JAVA高,因为C是编译型的,直接将源码编译成机器代码;而JAVA是解释型,源码被编译成二进制伪代码,由JAVA虚拟机解释执行。

但是,由于C是编译型的,它的可移植性差;而JAVA是解释执行,因此具有很好的移植性,可跨平台运行。

目前java运行速度是没有c快,但它的internet编程方面的强大优势,易学性,完全面向对象的特性,以及全美40%以上的公司都采用java,你说你想学什么?

java和c的速度比较,是相对的,针对不同的应用, 又不同的结果,编一个普通的本地应用程序,一般c 要快于java, 编web应用,由于c实现的cgi程序基本是进程型,而java application server 的管理servlet采用线程方式,所以,在访问量大的情况下,java有优势。

但是紧紧比较速度,除非是对实时性要求高的情况下,是不够的。由于JAVA又比较完整,规范的库,语言定义比较严格,一般开发速度比较高。

单纯论执行效率,C比Java高。

C语言编译出来的程序执行过程是机器直接执行其机器码

Java语言编译出来的程序执行过程是,Java虚拟机翻译Java字节码,然后将其转换成机器码告知机器运行。

同时Java语言是自动管理内存的,所以他会追踪大部分对象的引用情况,占用的内存比C语言程序要高一些。

相对于C语言Java的优点:

1,开发较快速,难度较低,开发项目时需要的人手少,成品速度快,对开发人员要求低于C语言。

2,相关社区活跃,讨论和共享java技术的没有任何一个语言的社区敢相提并论,压倒性优势。

3,异常容易追踪,C的异常很难处理,有的时候要熬夜找bug

缺点:

1,运行速度较C慢,程序越大越明显

2,难与底层操作系统和硬件打交道,用C可以轻而易举获取操作系统硬件信息,java则不能。

C语言是经典的面向过程的编程语言,编程入门一般都学C语言以了解编程以及锻炼逻辑思维能力,在一些跟硬件比较紧密的编程中也经常用到。\x0d\x0a\x0d\x0aC++是在C语言的基础上加入了面向对象的概念,成为混合型面向对象语言,功能强大,但难度也大。\x0d\x0a\x0d\x0aJava是在C++的基础上进行改进的,摒弃了一些C++的不足之处,语法跟C++很像,它是运行在Java虚拟机上,所以可以跨平台,一处编译,到处执行。\x0d\x0a\x0d\x0a编程都是易学难精,哪个都好学,哪个又都不好学。都有很好的发展前景,就看是什么方向了。底层的C、桌面应用程序、游戏等等C++、嵌入式,网页,Java。