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

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++里面没有。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值