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

溫馨提示×

溫馨提示×

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

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

Java字節碼執行的兩種方式是什么

發布時間:2022-06-01 15:18:33 來源:億速云 閱讀:108 作者:iii 欄目:大數據

本文小編為大家詳細介紹“Java字節碼執行的兩種方式是什么”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Java字節碼執行的兩種方式是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

1、說明

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

(2)解釋執行方式:解釋器通過每次解釋并執行一小段代碼來完成Java字節碼程序的所有操作。

常用的是第二種方法。因為JVM規范描述有足夠的靈活性,所以它可以更高效地將字節碼轉換成機器碼。對那些對運行速度有更高要求的應用程序,可以使用解釋器將Java字節碼立即編譯成機器碼,從而很好地保證了Java代碼的可移植性和高性能。

2、實例

  public static void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
         0: iconst_1
         1: istore_1
         2: iconst_2
         3: istore_2
         4: iconst_1
         5: iconst_2
         6: invokestatic  #2                  // Method calc:(II)I
         9: istore_3
        10: return
        
  static int calc(int, int);
    descriptor: (II)I
    flags: ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
         0: iload_0
         1: i2d
         2: ldc2_w        #3                  // double 2.0d
         5: invokestatic  #5                  // Method java/lang/Math.pow:(DD)D
         8: iload_1
         9: i2d
        10: ldc2_w        #3                  // double 2.0d
        13: invokestatic  #5                  // Method java/lang/Math.pow:(DD)D
        16: dadd
        17: invokestatic  #6                  // Method java/lang/Math.sqrt:(D)D
        20: d2i
        21: ireturn

讀到這里,這篇“Java字節碼執行的兩種方式是什么”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

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

AI

舒城县| 宁德市| 林州市| 平湖市| 兴安县| 晋江市| 湟中县| 徐闻县| 方山县| 荥经县| 昔阳县| 古丈县| 曲周县| 六安市| 深圳市| 永胜县| 张掖市| 昌平区| 泗洪县| 昭通市| 高陵县| 阿合奇县| 鹤岗市| 金溪县| 始兴县| 铅山县| 那坡县| 大冶市| 吉水县| 宣城市| 怀柔区| 南安市| 张北县| 樟树市| 黎川县| 巩留县| 独山县| 莱芜市| 阿拉尔市| 鄂州市| 离岛区|