由于每個平臺的特性不同可引用的函數(shù)程序庫(Library)不同也許你的代碼還得作修改才可以在另一個平臺上編譯執(zhí)行。這很不方便就是說如果你在Windows設計了一款游戲想要賣給Linux的使用者就得再花費一些功夫。這也是為什么大部分游戲或者軟件只能在Windows運行了。

寶豐網(wǎng)站制作公司哪家好,找
成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、APP開發(fā)、
響應式網(wǎng)站開發(fā)等網(wǎng)站項目制作,到程序開發(fā),運營維護。
成都創(chuàng)新互聯(lián)公司于2013年創(chuàng)立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設就選
成都創(chuàng)新互聯(lián)公司。
Java 也是個高階語言要讓電腦執(zhí)行你編寫的應用程序也是得借助編譯器的翻譯。不過Java編譯時并不直接翻譯為相依于某平臺的0101指令而是翻譯為中介格式的位元碼。Java 的原始碼文件格式名為*.java經(jīng)過編譯器翻譯過后會變成*.class的格式文件位元碼。如果想要執(zhí)行這個位元碼檔案目標平臺上必須安裝有虛擬機會將位元碼翻譯為相應平臺支持的語言。
不同的平臺必須安裝該平臺相對應的JVM這就好比你講中文(*.java)、Java編譯器幫你翻譯為英文(*.class)。之后該英文文件到當?shù)刂笤儆僧數(shù)乜吹枚⑽牡娜朔g為當?shù)氐姆窖浴?/div>
所以虛擬機所擔任的職責之一就是當?shù)氐姆g員將位元碼文件翻譯為當時作業(yè)系統(tǒng)看得懂的0101序列。不過這不是最重要的基本上如果只是要翻譯員的話直譯器(Interpreter )就辦得到了。
JVM有個很重要的觀念就是:對于Java程式而言其實它只認識一種作業(yè)系統(tǒng)(或說是一種機器)這個系統(tǒng)叫作虛擬機,而對于虛擬機而言位元碼文件就是它的可執(zhí)行文件!也就是格式為.class的文件。Java代碼程序理想上并不用理會真正執(zhí)行于哪個平臺之上,它只要知道如何執(zhí)行于JVM之上就可以了至于JVM實際上如何與底層平臺作溝通則是JVM自己的事!
這個觀念非常的重要對于以后能夠搞清楚所PATH變量與CLASSPATH變量的概念也有一定的幫助。
分享標題:Java究竟為什么需要虛擬機?(下)
文章分享:http://chinadenli.net/article2/chdjoc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站收錄、品牌網(wǎng)站建設、企業(yè)建站、建站公司、定制網(wǎng)站
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源:
創(chuàng)新互聯(lián)