所謂的跨平臺就是JAVA寫的壹份代碼可以在任意的操作系統平臺上運行。
為什麽跨平臺會成為壹個問題呢?因為每壹個操作系統平臺支持不同的指令集我們所寫的代碼經過編譯之後只能適用於壹個平臺,換壹個平臺就不支持了。而JAVA完美的解決了這個問題。
Java的壹大特色就是“write once, run anywhere”即“壹次編譯,到處運行”。就是說妳不用專門為每個平臺寫壹份代碼,妳寫的Java程序在任何平臺都能跑起來。
它的實現原理是在系統層面上又增加了壹層虛擬機(Java Virtual Machine,簡稱JVM),且為每個平臺都定制了對應的虛擬機。然後Java程序是在虛擬機上跑的,因此平臺無關。
Java的運行流程是:程序員寫了源代碼(Source Code,.java後綴,跨平臺),然後經過編譯器編譯成字節碼(Byte Code,.class後綴,二進制文件),字節碼是所有虛擬機都能理解的中間文件。然後交給虛擬機(每個平臺都有對應的虛擬機)去運行。
所以對“write once, run anywhere”更準確的理解是,“壹次編譯,到處裝虛擬機,所以到處運行”。
整個流程如下圖所示。
希望對您有所幫助!~