⑴ c语言比java难学难在哪里
⑵ Java和c语言的区别
C语言是经典的面向过程的编程语言,编程入门一般都学C语言以了解编程以及锻炼逻辑思维能力,在一些跟硬件比较紧密的编程中也经常用到。\x0d\x0a\x0d\x0aC++是在C语言的基础上加入了面向对象的概念,成为混合型面向对象语言,功能强大,但难度也大。\x0d\x0a\x0d\x0aJava是在C++的基础上进行改进的,摒弃了一些C++的不足之处,语法跟C++很像,它是运行在Java虚拟机上,所以可以跨平台,一处编译,到处执行。\x0d\x0a\x0d\x0a编程都是易学难精,哪个都好学,哪个又都不好学。都有很好的发展前景,就看是什么方向了。底层的C、桌面应用程序、游戏等等C++、嵌入式,网页,Java。
⑶ java比c语言简单
C语言简单,有的人说JAVA简单,我不太赞成。我曾以为我对JAVA了解的已经差不多了,但自从看了JAVA编程语言/核心技术,我才发现自己懂的仅仅的“语法”而已。所以,不要以为懂了“语法”,就懂了一门语言。曾有人说“JAVA=C
--”,这句话意思就是,对C
进行了一些取长补短,而C
又提取自C语言,说到底,C语言是基础中的基础,你要走向成功,更强大,就要从底层学起。好比学英语,你是觉得“英语聊天”简单,还是“说单词”简单?你要是觉得单词简单,就先学C语言。你要是觉得“英语聊天”简单,就学JAVA。当然,你直接学JAVA也“不会影响”你将来的发展。别人来到我们中国,不一定要了解历史才能生存吧?
⑷ Java为什么永远比C,C++慢
首先,java字节码的执行是通过jvm(java虚拟机)来执行的,而jvm基本上是用c语言实现的。这就相当于多了一个中间层,用c、c++编写的程序执行是(可执行文件--->机器),而用java编写的程序执行是(字节码--->jvm--->机器)。另外,jvm本身的一些机制如垃圾回收,类的查找与加载等也是有时间消耗。
不过任何事情都是有两面性,java可能比c、c++慢,但是这个平台为我们屏蔽了很多机器和操作系统的差异性,我们编写java代码基本不用太多考虑机器和操作系统本身的东西。并且有很好的可移植性。比如你在Windows下写的java代码,基本上只需要做很少的修改就可以在Linux下运行了。
最后说点题外话,那些说java可以比c、c++快的人应该都是java的死忠,我相信实现同样的功能有高手可以用java写的程序比很多人用c、c++写的程序要快,但是和同样水平的c、c++程序比,那么在程序性能上还是不会有优势的。而那些开口闭口就说java慢的像蜗牛的人估计也没有写过几行java代码,实现同样功能他用c、c++写的也未必有别人用java写的程序跑的快。
所以,没有太多的必要比较语言的快慢,重要的是语言他适合用来做什么,存在的既是合理的,一种语言既然存在那么必然有他适用的地方,不然你可能没有听说过这门语言。
⑸ 为什么同样的代码java运行比c快
C语言执行的快。因为Java其实是运行在虚拟机之上,同样的代码C直接被调用执行,Java的代码是需要在虚拟机上跑。虚拟机执行代码又会增加其他代码。到最后当然是C语言执行的快了。
⑹ 为什么说Java比C / C++ 慢
1.C++是编译型语言,java是解释型语言,普遍来讲,编译型语言要比解释型语言速度快。
2.C++是在C语言的基础上增加了新的语法和面向对象的机制,更加接近C语言,也就意味着更加接近底层硬件,越接近于硬件,运行速度越快。
3.java是纯面向对象的语言,实现了大量类的封装,体系比较庞大,对于java程序员来说,底层硬件可以说是透明的,所以想要优化效率是不容易的。
4.java慢于C++的一个重要原因就是java是运行在java虚拟机上,虚拟机的也需要时间开销。
5.总的来说,C++的效率大概是java的3到4倍,但是现在CPU的速度已经很快了,这种几倍的效率问题CPU已经可以完全屏蔽了。
⑺ C语言是高级语言吗为什么java被称为高级语言是因为它面向对象吗java是不是比C语言方便很多啊
C和Java都是计算机的高级语言。相对低级语言来说,高级语言更接近人类的思维方式,更容易理解和掌握,用高级语言编写程序时,感觉像是学生写作文一样,既能表达准确又不那么吃力。
低级语言分为机器语言(二进制语言)和汇编语言(符号语言)。早期的程序开发,用的是汇编语言,编程难度较大,因为汇编语言不容易理解和掌握。汇编语言跟计算机的硬件关系密切,涉及到计算机底层的指令系统。
我们知道,高级语言最终还是要编译成低级语言,计算机才能读懂和执行的。
高级语言与计算机底层的硬件与指令没什么关系,可以很方便地表示数据的运算和程序的控制结构,描述各种算法,容易学习掌握等等。但是,用高级语言编写的程序,编译生成的指令代码比汇编语言编写的程序的代码的要长,执行的速度也慢。
所以,汇编语言还是有它的好处的,因为汇编语言能直接被机器所读懂并执行了!速度快,还能开发与硬件相关的程序!
C跟Java的区别主要在于编程思维的特点,C是面向过程,Java是面向对象。相比面向过程,面向对象的优点是:可重用性高、可扩展性强、可维护性好。
这两种思维对我们人类解决问题时,都是很重要的,面向过程与面向对象各有优劣,各有侧重点。而面向对象被应用得更广泛。个人认为,面向对象在多数情况下,是比面向过程方便。
如果你认真阅读以上内容,相信你会知道问题的答案了!
⑻ 用C语言和JAVA语言写同样的程序,哪个占用内存大,大多少,两种语言写的同样的程序,哪个执行时效率
当然是java占的内存大喽,java之所以能在好多设备上跑,它有做了一层虚拟层,java代码在虚拟层上跑的,只要虚拟层能在某台机器上跑就可以了。因此,java的程序占用的内存要大点的!效率当然是C高,除了汇编,C应该是最高的啦!RAM就是相当于内存吧,可擦除的!RAM-RamdomAccessMemory易挥发性随机存取存储器,高速存取,读写时间相等,且与地址无关,如计算机内存等。