【面試】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++裏面沒有。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章