为什么java可跨平台执行,java为什么可以跨平台执行
java為什么可以跨平臺執行以下文字資料是由(歷史新知網www.lishixinzhi.com)小編為大家搜集整理后發布的內容,讓我們趕快一起來看一下吧!
java為什么可以跨平臺執行
因為java程式是用java虛擬機器(JVM)執行的,不論是用什么平臺開發的java程式碼,最終都會被轉換成只被JVM識別的程式碼。
所以只要下載各個平臺的java虛擬機器就可以實現程式碼的跨平臺執行。
因為它有虛擬機器(JVM),JAVA程式不是直接在電腦上執行的,是在虛擬機器上進行的,每個系統平臺都是有自己的虛擬機器(JVM),所以JAVA語言能跨平臺。
1, java程式碼不是直接執行在CPU上,而是執行在java虛機(簡稱JVM)上的。
2,java是先把java檔案編譯成二進位制位元組碼的class檔案,jvm就解釋執行class檔案。
3,就是因為java是執行在jvm上的,所以它的程式碼就能不經修改,就能在不同平臺的jvm上執行(在UNIX用UNIX的jvm,在linux上用linux的jvm,在windows上用windows的jvm)
假如用windows移植到UNIX,只需把java檔案是UNIX的jvm上編譯成class檔案,然后用jvm執行就可以了
說明java為什么可以跨平臺執行
Java不是傳統意義上的編譯語言,Java程式執行在虛擬機器上,執行的是一種稱作Java位元組碼的東西,可以理解成虛擬機器的機器碼。這樣只要不同的平臺安裝不同的虛擬機器就能使一樣的Java程式碼被編譯成不一樣的位元組碼從而可以在不同平臺執行
Java為什么能跨平臺執行
因為他是在java的虛擬機器上執行
哪里有虛擬機器
哪里就可以執行java
為什么Java可以跨平臺,而其他語言不行
首先糾正下錯誤:也有語言可以跨平臺,比如匯編,機器碼這類的低階語言。只是這類的低階語言僅僅只是語法通過,不能做到同一程式碼同樣執行效果。 要解釋java為何能跨平臺就要從java的執行過程來講。java是通過JVM執行的,
為什么java支援跨平臺
因為Java程式編譯之后的程式碼不是能被硬體系統直接執行的程式碼,而是一種“中間碼”——位元組碼。然后不同的硬體平臺上安裝有不同的Java虛擬機器(JVM),由JVM來把位元組碼再“翻譯”成所對應的硬體平臺能夠執行的程式碼。因此對于Java程式設計者來說,不需要考慮硬體平臺是什么。所以Java可以跨平臺。
因為它有虛擬機器(JVM),JAVA程式不是直接在電腦上執行的,是在虛擬機器上進行的,每個系統平臺都是有自己的虛擬機器(JVM),所以JAVA語言能跨平臺。
1, java程式碼不是直接執行在CPU上,而是執行在java虛機(簡稱JVM)上的。
2,java是先把java檔案編譯成二進位制位元組碼的class檔案,jvm就解釋執行class檔案。
3,就是因為java是執行在jvm上的,所以它的程式碼就能不經修改,就能在不同平臺的jvm上執行(在UNIX用UNIX的jvm,在linux上用linux的jvm,在windows上用windows的jvm)
假如用windows移植到UNIX,只需把java檔案是UNIX的jvm上編譯成class檔案,然后用jvm執行就可以了。
Java為什么能跨平臺,NET為什么能跨, JAVA語言為什么能跨平臺?
因為Java程式編譯之后的程式碼不是能被硬體系統直接執行的程式碼,而是一種“中間碼”——位元組碼。然后不同的硬體平臺上安裝有不同的Java虛擬機器(JVM),由JVM來把位元組碼再“翻譯”成所對應的硬體平臺能夠執行的程式碼。因此對于Java程式設計者來說,不需要考慮硬體平臺是什么。所以Java可以跨平臺。
而C/C++不可以跨平臺的原因就是編譯后的程式碼在特定的硬體上可以直接執行,換個硬體平臺這些程式碼就不能被執行了。不過正是因為可以直接執行,所以C/C++程式的執行效率要比Java程式高
為什么Java可以跨平臺呢?為什么,什么是虛擬機器阿?
一般我們所謂的執行檔
內容是一堆人類看不懂得機械碼 是拿來給機器看的
因為他要直接指揮計算機去做事情 所以得寫成機器可以執行的語言
問題是
每一臺機器有自己的語言 每一個平臺也有自己的語言
所以在不同的機器上 我們要用不同的執行檔
那 Java 怎么達成一個程式 跨平臺執行的呢~~
其實, Java 是在各種平臺之上建立起他自己的平臺
也就是所謂的 JVM (Java 虛擬機器器)
再用 JVM 來執行他的類別檔
因為不管在甚么平臺上 實際執行類別檔的都是 JVM
所以就可以達到 跨平臺的目的
123456
類別檔程式
______________________________|_________________________________
| | | |
Windows95/98版JVM WindowsNT系列JVM Linux版JVM Unix版JVM
| | | |
Windows95/98 WindowsNT/2000 Linux Unix
所以要執行 Java 的程式 就必須先在機器上啟動 JVM 才行
而啟動 JVM 的程式 就是所謂的 JRE
Java虛擬機器是一個想象中的機器,在實際的計算機上通過軟體模擬來實現。Java虛擬機器有自己想象中的硬體,如處理器、堆疊、暫存器等,還具有相應的指令系統。
1.為什么要使用Java虛擬機器
Java語言的一個非常重要的特點就是與平臺的無關性。而使用Java虛擬機器是實現這一特點的關鍵。一般的高階語言如果要在不同的平臺上執行,至少需要編譯成不同的目的碼。而引入Java語言虛擬機器后,Java語言在不同平臺上執行時不需要重新編譯。Java語言使用模式Java虛擬機器遮蔽了與具體平臺相關的資訊,使得Java語言編譯程式只需生成在Java虛擬機器上執行的目的碼(位元組碼),就可以在多種平臺上不加修改地執行。Java虛擬機器在執行位元組碼時,把位元組碼解釋成具體平臺上的機器指令執行。
2.誰需要了解Java虛擬機器
Java虛擬機器是Java語言底層實現的基礎,對Java語言感興趣的人都應對Java虛擬機器有個大概的了解。這有助于理解Java語言的一些性質,也有助于使用Java語言。對于要在特定平臺上實現Java虛擬機器的軟體人員,Java語言的編譯器作者以及要用硬體晶片實現Java虛擬機器的人來說,則必須深刻理解Java虛擬機器的規范。另外,如果你想擴充套件Java語言,或是把其它語言編譯成Java語言的位元組碼,你也需要深入地了解Java虛擬機器。
Java是跨平臺的,究竟什么是跨平臺
跨平臺是指開發的程式可以在不同的軟硬體環境里執行,并且可以進行移植,例如用JAVA可以開發在PC上執行的軟體也可以開發在手機上執行的軟體!
分頁:123
總結
以上是生活随笔為你收集整理的为什么java可跨平台执行,java为什么可以跨平台执行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 替换字符串指定位置字符 php,PHP
- 下一篇: php简单分词,php版简易中文分词实现