把CPU處理器與作業系統的整體叫平台,每種CPU都有其特定的指令集,不同的作業系統支援不同CPU的指令集。語言跨平台是編譯後的檔案跨平台,而不是源程式跨平台。
.java經過編譯器(與平台無關)編譯為.class檔案,再根據解釋器(與平台相關)解釋執行。
Java是解釋執行的,編譯為中間碼的編譯器與平台無關,編譯生成的中間碼也與平台無關(一次編譯,到處運作),中間碼再由解釋器解釋執行,解釋器是與平台相關的,也就是不同的平台需要不同的解釋器.
JAVA位元組碼通過虛拟機翻譯(解釋)給不同的平台,這個過程就叫做跨平台。JAVA位元組碼檔案隻有一個,但針對不同的平台會有不同的虛拟機,實作跨平台最根本的東西是虛拟機(JVM)。