Java、C++、C相關知識
阿新 • • 發佈:2018-12-16
1、Java語言的優點(6點):
(1) 純面向物件的語言,在java中一切都是物件;
(2) 平臺無關性(可移植性),因為Java為解釋性語言,編譯器會把Java程式碼程式設計“中間程式碼”,然後在JVM上執行,只要計算機 上安裝了JDK 就可以執行java程式。“一次編譯,多次執行”;
(3) 提供多種內建的類庫,簡化開發人員的工作。例如,提供對多執行緒的支援,支援網路程式設計,提供垃圾回收機制;
(4) 提供了對web應用的開發的支援;
(5) 具有良好的安全性和健壯性,例如提供資料邊界檢查、Bytecode校驗、強型別機制、垃圾回收器、異常處理、安全檢查;
(6) 去除了C++中難以理解的部分,如預處理(標頭檔案和巨集定義)、指標、結構、單元運算子過載、虛擬基礎類、多重繼承。
2、Java、C++、C的對比
Java | C++ | C | 結論 | |
語言型別 | 面向物件 | 面向物件 | 面向過程 | Java和C++具有很好的可重用性 |
執行過程 | 原始碼經Java編譯器編譯成位元組碼然後在JVM執行 | 原始碼經編譯和連結生成可執行的二進位制程式碼 | java為解釋性語言,而C和C++是編譯性語言,Java的執行速度相對較慢,但是它可以跨平臺 | |
實現 | 所有程式碼都在類中實現 | 兼具面向物件和麵向過程的特點 | Java中沒有全域性變數和全域性函式,而C++中可以 | |
安全性 | java提供垃圾回收機制,提供import, | 把釋放資源的函式放到finally中,支援運算子過載,支援預處理,支援預設函式引數,支援指標,支援goto,支援自動強制型別轉換 | 所有java具有更好的安全性 | |
多型性 | 不支援多重繼承 | 支援多重繼承 | Java可是實現多個介面,實現了與多重性類似的目的 |