c++与java的区别与相似分别是什么?

如题所述

c/c++ 比较早,C++引入了面向对象的概念,尽管它还不是纯粹的面向对象语言。关于c/c++就不用多说了,他们地位是撼不动的。很强大。

后来Java出来了 ,同样震精世界了啊,纯粹的面向对象,不像c++那样还保留了些许面向过程的思想。因为其跨平台的原因,java的运行机制和其他语言不一样,引入了虚拟机的概念,它既不属于编译型的语言 也不属于解释型的语言,而处于中间,他将源代码编译成了所谓的字节码,由虚拟机负责解释然后和本地操作系统沟通并执行,可以说他编译是面向虚拟机的,而非特定的机器,这点和C以及其他编译型语言有明显的区别。当然Java取消了c/c++里面指针的概念,减少了程序员的负担。

要说他们的相同点,那就是他们都编程语言,都能完成人们赋予它们的任务。
要说不同点,那就它们属于不同的家族,每个家族都有他们擅长的领域、和不擅长的领域。比如,你要去写一个底层的驱动了,那么你把C语言拿过来了,给你个单片机让你写个程序控制某台机器,你又把C语言拿出来了,第二天又让你写个网站程序,会员注册管理之类的,这个时候你把java的 j2ee搬出来了,搞定了。相信从这里你就看出来,他们的区别在哪里了,也就是他们各自擅长的领域和不擅长的领域在哪里。你绝对不能用java语言去开发一个驱动程序,你更不能用C语言,去写一个 B/S架构的网站,试图取代java ee 里面的 servlet 那就累了。
当然,除了这些语言之外,还有很多的语言可供选择,有时候各种语言会重叠,实现同一任务,会有N多可选择的语言,这个时候,就根据你喜欢了,或者说公司有要求,必须用什么写,你就用什么写,最终完成任务。

我不赞成,把各种语言拿过来横向对比,非得排出一个序来,争的脸红脖子粗,来证明谁更牛逼,谁第二牛逼,等等。就好比你写一个windows窗口应用程序,你可以用c 也可以用vc++ mfc 也可以用delphi 还可以用c# 甚至还能用易语言,当然也能用java ,java里面又能选择使用 AWT,SWING,SWT 等等。。。 这么多的选择,只能说,你喜欢用哪个、哪个用的顺手就用哪个,不纯正谁比谁牛逼的问题。
我用一根针,来削铅笔,很费劲不能实现,拿过来一把小刀,很轻松就完成任务了,我认为刀子比针牛逼;后来我需要缝衣服了,把刀子拿过来怎么缝也缝不好,结果用针很轻松的完成任务了,我又感觉针比刀子牛逼。到底谁牛逼?能够学会在不同的场合使用最合适的工具的人,才是最牛逼的,而刀子和针,仅仅是一个没有思想的工具罢了,程序语言也是一样的。
温馨提示:答案为网友推荐,仅供参考
相似回答