導航:首頁 > 程序命令 > java跨平台執行JAVA命令

java跨平台執行JAVA命令

發布時間:2022-07-12 19:27:04

java語言是怎樣跨平台性運行的呢麻煩告訴我

我可以明確的告訴你:
只要是使用的 100% 的 java ,在 win 下的 .class 文件,直接拷貝到 linux 下, 絕對可以運行.
我自己就使用 windwosXP 來寫 java 程序,調試好後,直接放到我以前的舊電腦的 linux 伺服器上, 運行起來絕對沒有問題.
這其中包括 使用swing 的GUI程序, 和各種網路程序.和 win 下運行情況一模一樣.
就單跨平台來說,沒有比 Java 更好的了.
你說的:問那個資料庫實驗老師打個比方假如我把eclipse的class拷到我的PPC上能運行嗎?竟然回答沒問題,我當時就有點傻.
因為 eclipse 使用了 JNI 來實現 swt 的GUI, 所以,即使 PPC 上有 JVM ,如果沒有 swt 在 PPC 上的 JNI 實現, eclipse 是不能運行的.
這也就是 eclipse 要分 linux 和 win 版的原因(因為使用了 JNI 調用本地代碼).
所以你要使你的一個 .class 文件可以在各種平台上運行, 只要不調用 JNI ,使用 100% 的java ,覺得沒有問題.
此外在 linux 下運行 java ,很簡單的. 只需要安裝 JDK ,設置一下 ClassPath 就可以象 在 win 下一樣使用 Java了.
如果你連在 win 下都沒有使用 控制台 運行過 Java 程序,只會使用IDE,那你最好不要去玩 linux 了, 你肯定不能成功的執行 Java .不要說網上的資料有問題, 是你的知識太少了.
建議你先看看 <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之所以能跨平台,是因為java虛擬機能跨平台。
因為Java程序編譯之後的代碼不是能被硬體系統直接運行的代碼,而是一種「中間碼」——位元組碼。然後不同的硬體平台上安裝有不同的Java虛擬機(JVM),由JVM來把位元組碼再「翻譯」成所對應的硬體平台能夠執行的代碼。因此對於Java編程者來說,不需要考慮硬體平台是什麼。所以Java可以跨平台。
因為它有虛擬機(JVM),JAVA程序不是直接在電腦上運行的,是在虛擬機上進行的,每個系統平台都是有自己的虛擬機(JVM),所以JAVA語言能跨平台。

java代碼不是直接運行在CPU上,而是運行在java虛機(簡稱JVM)上的。
java是先把java文件編譯成二進制位元組碼的class文件,jvm就解釋執行class文件。
就是因為java是運行在jvm上的,所以它的代碼就能不經修改,就能在不同平台的jvm上運行(在UNIX用UNIX的jvm,在linux上用linux的jvm,在windows上用windows的jvm)
假如用windows移植到UNIX,只需把java文件是UNIX的jvm上編譯成class文件,然後用jvm運行就可以了.

⑷ 簡述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為什麼可以跨平台執行

java是跨平台的,就是生成的.class文件拿到任何系統平台都能運行,其實是建立在虛擬機上的,也就是jvm,你裝jkd的時候就帶了。
所有的java程序都是在虛擬機也就是jvm是運行的,而且jvm的版本也不同,有windows版本的還有linux版本的,正是因為有了不同的jvm才使得java可以跨平台。簡單的說就是因為jvm的不跨平台才導致了java的跨平台,其實是一個過度。不象c語言他沒有jvm,通過操作系統內核來編譯,windows的操作系統編寫的c,拿到linxu下就用不了。
打個比方,就象大家所知道的看電影有一種文件叫rmvb格式的,它拿到哪個平台都能運行,那是因為有realplayer,暴風等播放器的原因。不同的播放器有windows版 和linux版一個道理。

⑹ java的跨平台工作原理

首先我們要理解什麼是跨平台,所謂的跨平台就是JAVA寫的一份代碼可以在任意的操作系統平台上運行。

為什麼跨平台會成為一個問題呢?因為每一個操作系統平台支持不同的指令集我們所寫的代碼經過編譯之後只能適用於一個平台,換一個平台就不支持了。而JAVA完美的解決了這個問題,JAVA是如何做到這一點的呢?在上圖中我們可以看到JAVA代碼執行的流程。

JAVA源代碼->JAVA位元組碼->JVM解釋執行

我們寫的JAVA源代碼會被編譯為位元組碼,然後被JVM虛擬機解釋執行,我們可以看到JVM虛擬機在跨平台的過程中發揮了重要的作用,就是由它解釋位元組碼並執行的,對應於每一個平台都有一個JVM虛擬機,而位元組碼只有一份,windows的JVM虛擬機可以將位元組碼解釋為能在windows平台上執行的指令並執行,Linux的JVM虛擬機可以將位元組碼解釋為能在Linux平台上執行的指令並執行,他們執行的位元組碼都是同一份。這樣就實現了跨平台。

⑺ java是如何實現跨平台運行的

在不同平台實現JVM Java虛擬機,然後Java應用運行在虛擬機上。

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

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

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

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

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

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

閱讀全文

與java跨平台執行JAVA命令相關的資料

熱點內容
flash編程書籍推薦 瀏覽:835
php獲得數組鍵值 瀏覽:401
香港雲伺服器操作 瀏覽:303
wpe最新源碼 瀏覽:857
自己購買雲主伺服器推薦 瀏覽:422
個人所得稅java 瀏覽:761
多餘的伺服器滑道還有什麼用 瀏覽:192
pdf劈開合並 瀏覽:29
不能修改的pdf 瀏覽:752
同城公眾源碼 瀏覽:489
一個伺服器2個埠怎麼映射 瀏覽:298
java字元串ascii碼 瀏覽:79
台灣雲伺服器怎麼租伺服器 瀏覽:475
旅遊手機網站源碼 瀏覽:332
android關聯表 瀏覽:946
安卓導航無聲音怎麼維修 瀏覽:333
app怎麼裝視頻 瀏覽:431
安卓系統下的軟體怎麼移到桌面 瀏覽:96
windows拷貝到linux 瀏覽:772
mdr軟體解壓和別人不一樣 瀏覽:904