導航:首頁 > 編程語言 > java可以跨平台的原因

java可以跨平台的原因

發布時間:2023-06-09 17:46:59

java跨平台原理,其他語言為什麼不可以

C/C++語言都直接編譯成針對特定平台機器碼。如果要跨平台,需要使用相應的編譯器重新編譯。

Java源程序(.java)要先編譯成與平台無關的位元組碼文件(.class),然後位元組碼文件再解釋成機器碼運行。解釋是通過Java虛擬機來執行的。

位元組碼文件不面向任何具體平台,只面向虛擬機。

Java虛擬機是可運行Java位元組碼文件的虛擬計算機。不同平台的虛擬機是不同的,但它們都提供了相同的介面。

Java語言具有一次編譯,到處運行的特點。就是說編譯後的.class可以跨平台運行,前提是該平台具有相應的Java虛擬機。但是性能比C/C++要低。

② java的跨平台的含義是什麼為什麼java可以跨平台

首先,理解平台的含義是什麼..平台的意思.個人感覺就是指操作系統,還有一層意思就是運行不同操作系統的不同的硬體設備;
也就是說,某一種代碼編譯後,既可以在a操作系統下運行,也可以在b操作系統下運行...或者是在c設備上運行.
那麼除了java以外還有什麼跨平台的語言么?當然有啊,python(但是能力有限,只能不能跨位,就是32不能跨到64,同時也不能跨版本),scala..都可以..但是相對於java,它的跨平台性能就要差一點..(其實java跨平台也不是那麼完美,很多時候還是有很多陷阱)
至於java如何實現的跨平台,那就跟java這個語言的機制有關系了.java代碼被javac編譯成java中間碼(就是.class文件)JIT編譯器再把java中間碼編譯成nativecode,最終在晶元上執行..能做到跨平台,就在編譯nativecode這步做文章...不同的jvm通過不同的技術,將java中間碼按照相同的規范編譯成高效的,對應不同平台的原生機器碼,從而實現了同一中間碼在不同設備上的同樣執行結果..以此實現的java跨平台..
2017年8月16日 12:40:34

③ java為什麼可以跨平台執行

因為java程序是用java虛擬機(JVM)執行的,不論是用什麼平台開發的java代碼,最終都會被轉換成只被JVM識別的代碼。
所以只要下載各個平台的java虛擬機就可以實現代碼的跨平台運行。

④ JAVA語言為什麼能跨平台

所謂的跨平台就是JAVA寫的一份代碼可以在任意的操作系統平台上運行。

為什麼跨平台會成為一個問題呢?因為每一個操作系統平台支持不同的指令集我們所寫的代碼經過編譯之後只能適用於一個平台,換一個平台就不支持了。而JAVA完美的解決了這個問題。

Java的一大特色就是「write once, run anywhere」即「一次編譯,到處運行」。就是說你不用專門為每個平台寫一份代碼,你寫的Java程序在任何平台都能跑起來。

它的實現原理是在系統層面上又增加了一層虛擬機(Java Virtual Machine,簡稱JVM),且為每個平台都定製了對應的虛擬機。然後Java程序是在虛擬機上跑的,因此平台無關。

Java的運行流程是:程序員寫了源代碼(Source Code,.java後綴,跨平台),然後經過編譯器編譯成位元組碼(Byte Code,.class後綴,二進制文件),位元組碼是所有虛擬機都能理解的中間文件。然後交給虛擬機(每個平台都有對應的虛擬機)去運行。

所以對「write once, run anywhere」更准確的理解是,「一次編譯,到處裝虛擬機,所以到處運行」。

整個流程如下圖所示。

希望對您有所幫助!~

閱讀全文

與java可以跨平台的原因相關的資料

熱點內容
網站怎麼用本地伺服器 瀏覽:120
javadoc導入android 瀏覽:517
文件掃描成pdf 瀏覽:696
涼山火災救援命令 瀏覽:54
壓縮機三相檢測 瀏覽:861
linux怎麼安裝光碟 瀏覽:799
寬頻伺服器無響應是為什麼 瀏覽:226
壓縮包內看圖 瀏覽:914
安卓手機如何發現app後台調用情況 瀏覽:561
程序員簡歷工作描述 瀏覽:159
伺服器中強制疾跑的指令是什麼 瀏覽:54
日語命令性 瀏覽:261
免費的程序編譯游戲 瀏覽:892
如何安裝屏蔽的APP 瀏覽:198
豬臉識別app如何下載 瀏覽:156
卓嵐串口伺服器如何使用 瀏覽:440
pdf周振甫 瀏覽:759
程序員35歲生日圖片 瀏覽:629
矩形密封圈的壓縮量 瀏覽:457
信息安全中圖像加密技術畢業論文 瀏覽:538