自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java跨平臺原理淺析

開發(fā) 后端
這里向大家簡單介紹一下Java跨平臺的原理,主要包括Java字節(jié)碼的兩種執(zhí)行方式和Java程序執(zhí)行與C/C++程序執(zhí)行的對比分析兩大部分內(nèi)容,相信本文介紹對你一定會有所幫助。

使用Java語言編寫應(yīng)用程序***的優(yōu)點在于“一次編譯,處處運行”,然而這并不是說所有的Java程序都具有Java跨平臺的特性,事實上,相當一部分的Java程序是不能在別的操作系統(tǒng)上正確運行的,

Java跨平臺的原理

Java字節(jié)碼的兩種執(zhí)行方式

1、即時編譯方式:解釋器先將字節(jié)碼編譯成機器碼,然后再執(zhí)行該機器碼。

2、解釋執(zhí)行方式:解釋器通過每次解釋并執(zhí)行一小段代碼來完成Java字節(jié)碼程序的所有操作。
 
 通常采用的是第二種方法。由于JVM規(guī)格描述具有足夠的靈活性,這使得將字節(jié)碼翻譯為機器代碼的工作具有較高的效率。對于那些對運行速度要求較高的應(yīng)用程序,解釋器可將Java字節(jié)碼即時編譯為機器碼,從而很好地保證了Java代碼的可移植性和高性能。

Java程序執(zhí)行與C/C++程序執(zhí)行的對比分析

如果把Java源程序想象成我們的C++源程序,Java源程序編譯后生成的字節(jié)碼就相當于C++源程序編譯后的80x86的機器碼(二進制程序文件),JVM虛擬機相當于80x86計算機系統(tǒng),Java解釋器相當于80x86CPU。在80x86CPU上運行的是機器碼,在Java解釋器上運行的是Java字節(jié)碼。

Java解釋器相當于運行Java字節(jié)碼的“CPU”,但該“CPU”不是通過硬件實現(xiàn)的,而是用軟件實現(xiàn)的。Java解釋器實際上就是特定的平臺下的一個應(yīng)用程序。只要實現(xiàn)了特定平臺下的解釋器程序,Java字節(jié)碼就能通過解釋器程序在該平臺下運行,這是Java跨平臺的根本。當前,并不是在所有的平臺下都有相應(yīng)Java解釋器程序,這也是Java并不能在所有的平臺下都能運行的原因,它只能在已實現(xiàn)了Java解釋器程序的平臺下運行。

【編輯推薦】

  1. Java跨平臺程序設(shè)計規(guī)則
  2. 解決JVM***內(nèi)存設(shè)置問題
  3. 調(diào)用weblogic設(shè)置jvmheap大小
  4. 詳解Tomcat配置JVM參數(shù)步驟
  5. 深入學(xué)習JVM內(nèi)存設(shè)置原理和調(diào)優(yōu)
責任編輯:佚名 來源: blog.163.com
相關(guān)推薦

2020-02-24 21:23:41

跨平臺想法嘗試

2009-03-23 09:05:01

2021-04-08 14:45:57

Java語言計算機

2015-03-12 14:06:08

Java虛擬機平臺原理

2023-12-13 13:15:13

平臺開發(fā)實踐

2020-08-05 08:21:41

Webpack

2020-11-05 11:14:29

Docker底層原理

2023-05-11 07:25:57

ReduxMiddleware函數(shù)

2009-07-16 10:23:30

iBATIS工作原理

2010-09-25 13:47:14

Java跨平臺

2019-08-05 13:20:35

Android繪制代碼

2011-04-13 15:01:39

2011-09-14 10:03:46

Android SDK

2022-06-09 15:53:16

移動端渲染GPU

2019-03-25 15:14:19

Flutter馬蜂窩開發(fā)

2013-11-04 16:32:58

badBIOS病毒

2012-07-06 15:00:03

跨平臺工具MoSync

2012-07-06 15:08:14

跨平臺工具Netbiscuits

2011-04-29 12:54:14

筆記本

2023-02-12 23:23:30

點贊
收藏

51CTO技術(shù)棧公眾號