当前位置:编程学习 > C/C++ >>

JAva和C++语言的区别在哪方面?

区别在哪

追问:你知道这两个最深的区别吗
答案:1。面向对象没有java彻底。
由于C++要兼容C的内容,而C是面向过程的,所以C++不可避免地出现过程影子,并不算是完全的面向对象的程序设计语言。例如总得要有main或winmain之类的过程吧。

2。C++的移植能力没有java好。
由于C++的事实标准的存在,即各个编译器总存在差异,所以或多或少存
在不兼容。而且各个软件平台的C++启动代码和硬件指令不同,编译后的C++程序一般是不能跨平台的。而java从娘胎里出来就是为了跨平台执行的,不采
用二进制机器码作为最终代码,所以在移植方面较好。

3。C++的指针操作使得它不安全。
java没有指针,而C++的指针越界或野指针是造成弄脏内存的重要原因。
但是事情总得一分为二,C++的指针也是其效率大大超过java的原因之一。

3。C++可以直接操作硬件,带来了不安全。
java不提供硬件操作,而C++兼容C,使得它继承了其硬件操作功能,
是祸是福,各有说词。有人说它带来了不安全,也有人说它是所向披靡
的屠龙之器。

4。C++的动态对象必须及时销毁,否则可能会造成内存泄漏,而java免除了这个麻烦
java用垃圾收集器清楚不用的对象,而C++没有相关机制,使得上下
文终对象的建立和销毁不成对,就会造成内存泄漏。

5。C++的在网站建设方面不如java“强”
因为C++应该没有java在项目开发上来得快捷。之所以加引号,是因为
开发HTTP/1.0
java通常显得更健壮。
对象句柄一定初始化为null
句柄会得到检查,出错则抛弃异常
数组会检查界限
提供多线程等

我想最大的一个区别就是内存管理方面。

C++内容管理是强悍的,指针等都被保留,可以快速的操作到要的对象,性能是比较高的。遗憾的是对内存的操作带来了找不到数据的错误。由于高性能,它一般被用开发C/S,游戏等软件。

java可以说是让程序员尽量减少对内存的注意力,集中使用面向对象编程,OO强了,不过性能跟c++比还是差了点,不过强大的JVM提供了很多好处,比如移植性,垃圾回收器等。适用于开发不要求性能的软件。

这个区别就大了

语法都不一样

但是只要你的算法学的好的话

学哪个都不吃力

JAVA解决了C++中的不足:多重继承,允许访问内存,可移植性差等

JAVA相比C++而言有待提高:学习进阶周期长,桌面程序GUI开发效率不高

上一个:学习编程C++的问题
下一个:如何学好C++语言呢?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,