中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

和解析Java虛擬機概念及數據類型

發布時間:2021-10-23 18:02:36 來源:億速云 閱讀:155 作者:柒染 欄目:編程語言

今天就跟大家聊聊有關和解析Java虛擬機概念及數據類型,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

你對Java虛擬機的概念是否熟悉,這里向大家描述一下,Java虛擬機是一個想象中的機器,在實際的計算機上通過軟件模擬來實現。Java虛擬機有自己想象中的硬件,如處理器、堆棧、寄存器等,還具有相應的指令系統。

什么是Java虛擬機

Java虛擬機是一個想象中的機器,在實際的計算機上通過軟件模擬來實現。Java虛擬機有自己想象中的硬件,如處理器、堆棧、寄存器等,還具有相應的指令系統。

1.為什么要使用Java虛擬機?

Java語言的一個非常重要的特點就是與平臺的無關性。而使用Java虛擬機是實現這一特點的關鍵。一般的高級語言如果要在不同的平臺上運行,至少需要編譯成不同的目標代碼。而引入Java語言虛擬機后,Java語言在不同平臺上運行時不需要重新編譯.

Java虛擬機屏蔽了與具體平臺相關的信息,使得Java語言編譯程序只需生成在Java虛擬機上運行的目標代碼(字節碼),就可以在多種平臺上不加修改地運行。Java虛擬機在執行字節碼時,把字節碼解釋成具體平臺上的機器指令執行。

2.誰需要了解Java虛擬機

Java虛擬機是Java語言底層實現的基礎,對Java語言感興趣的人都應對Java虛擬機有個大概的了解。這有助于理解Java語言的一些性質,也有助于使用Java語言。
對于要在特定平臺上實現Java虛擬機的軟件人員,Java語言的編譯器作者以及要用硬件芯片實現Java虛擬機的人來說,則必須深刻理解Java虛擬機的規范。
另外,如果你想擴展Java語言,或是把其它語言編譯成Java語言的字節碼,你也需要深入地了解Java虛擬機。

3.Java虛擬機支持的數據類型

Java虛擬機支持Java語言的基本數據類型如下:

byte://1字節有符號整數的補碼

short://2字節有符號整數的補碼

int://4字節有符號整數的補碼

long://8字節有符號整數的補碼

float://4字節IEEE754單精度浮點數

double://8字節IEEE754雙精度浮點數

char://2字節無符號Unicode字符

幾乎所有的Java類型檢查都是在編譯時完成的。上面列出的原始數據類型的數據在Java執行時不需要用硬件標記。操作這些原始數據類型數據的字節碼(指令)本身就已經指出了操作數的數據類型,例如iadd、ladd、fadd和dadd指令都是把兩個數相加,其操作數類型特別是int、long、float和double。

虛擬機沒有給boolean(布爾)類型設置單獨的指令。boolean型的數據是由integer指令,包括integer返回來處理的。boolean型的數組則是用byte數組來處理的。

虛擬機使用IEEE754格式的浮點數。不支持IEEE格式的較舊的計算機,在運行Java數值計算程序時,可能會非常慢。
虛擬機支持的其它數據類型包括:

object//對一個Javaobject(對象)的4字節引用returnAddress//4字節,用于jsr/ret/jsr-w/ret-w指令

注:Java數組被當作object處理。

虛擬機的規范對于object內部的結構沒有任何特殊的要求。在Sun公司的實現中,對object的引用是一個句柄,其中包含一對指針:一個指針指向該object的方法表,另一個指向該object的數據。

用Java虛擬機的字節碼表示的程序應該遵守類型規定。Java虛擬機的實現應拒絕執行違反了類型規定的字節碼程序。
Java虛擬機由于字節碼定義的限制似乎只能運行于32位地址空間的機器上。但是可以創建一個Java虛擬機,它自動地把字節碼轉換成64位的形式。

從Java虛擬機支持的數據類型可以看出,Java對數據類型的內部格式進行了嚴格規定,這樣使得各種Java虛擬機的實現對數據的解釋是相同的,從而保證了Java的與平臺無關性和可移植性。

看完上述內容,你們對和解析Java虛擬機概念及數據類型有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桦甸市| 扎赉特旗| 双江| 库车县| 若羌县| 胶南市| 杭锦旗| 烟台市| 庆阳市| 襄汾县| 郸城县| 汕头市| 喜德县| 墨竹工卡县| 浦江县| 夏津县| 松溪县| 郓城县| 方正县| 五原县| 固安县| 伊宁县| 九龙城区| 伊通| 呈贡县| 阳山县| 东宁县| 鹤岗市| 读书| 北流市| 金华市| 顺平县| 资阳市| 广昌县| 贵德县| 青田县| 顺义区| 青浦区| 柳州市| 会理县| 中江县|