【面试】Java和C++/C的区别

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/Soldier49Zed/article/details/102461359

1)运行过程的不同,Java源程序经过编译器编译成字节码文件,然后由JVM解释执行。而C++/C经过编译、链接后生成可执行的二进制代码。因此C++/C的执行速度比Java快。

2)跨平台性。Java可以跨平台,而C++/C不行。

3)Java没有指针,C++/C有指针

4)Java不支持多重继承,但是可以实现多个接口来达到类似的目的。C++支持多重继承。

5)Java不需要对内存进行管理,有垃圾回收机制。C++/C需要对内存进行显示的管理。

6)Java不支持运算符重载。C/C++支持运算符的重载。

7)Java中每个数据类型在不同平台上所占的字节数是固定的,而C/C++则不然。

Java的优点:

1)跨平台:Java语言可以"一次性编译,到处运行"。跨平台的含义:无论是在Windows平台还是Linux平台对Java程序进行编译,编译后的程序都可以在其他平台上运行。编译器会把Java代码编译成字节码文件,然后在JVM上解释执行,由于字节码与平台无关,因此,Java可以很好地跨平台执行。

2)垃圾回收机制。

3)去掉了C++中难以理解的东西,比如指针、运算符重载等

4)具有较好的安全性。比如Java中有数组边界检测,但是C/C++里面没有。

猜你喜欢

转载自blog.csdn.net/Soldier49Zed/article/details/102461359
今日推荐