Java是跨平臺的。編程
Java代碼的編譯是由Java語言的編譯器來執行的,執行後生成的是.class文件,該文件是字節碼文件。線程
而後交給虛擬機進行運行,虛擬機是在各個平臺上可移植的。從而決定了Java是跨平臺的語言。編譯器
Java的虛擬機通常由:類裝載器、解釋器或編譯器、無用單元收集器、線程控制模塊。虛擬機
Java字節碼的執行有解釋執行方式和即時編譯方式。通常採用即時編譯方式。編譯
C語言的編譯過程是:class
由源程序 經 預處理器 程序
生成 修改後的源程序跨平臺
經 編譯器 生成 彙編程序語言
經彙編器 生成 可重定位的目標文件文件
經鏈接器 與其餘庫或者可重定位的目標文件
生成 可執行的目標程序