成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

JDK、JRE 和 JVM 有什么用,它們是怎樣運(yùn)行的

開發(fā) 前端
JRE 有一個 JVM 實(shí)例、庫類和開發(fā)工具。編寫和編譯 Java 代碼后,編譯器會生成一個包含字節(jié)碼的類文件。

JDK如何運(yùn)作?

JDK 功能

以下是JDK的重要組件:

  • JDK 和 JRE:程序員通過使用JDK 創(chuàng)建由 JRE 運(yùn)行的 Java 程序,其中包括 JVM 和類庫。
  • 類庫:是一組可動態(tài)加載的庫,Java 程序在運(yùn)行時調(diào)用。
  • 編譯器:是一個Java程序,開發(fā)人員的文本文件通過編譯器編譯成Java類文件。編譯器給出的常見輸出形式,包含Java字節(jié)碼。在 Java 中,主要的編譯器是 Javac。
  • 調(diào)試器:調(diào)試器是一個 Java 程序,開發(fā)人員通過調(diào)試器測試和調(diào)試 Java 程序。
  • JavaDoc: JavaDoc 是 Sun Microsystems 為 Java 制作的文檔。JavaDoc 可用于從源程序生成 HTML 文件中的 API 文檔

JRE如何運(yùn)作?

JRE 功能

JRE 有一個 JVM 實(shí)例、庫類和開發(fā)工具。編寫和編譯 Java 代碼后,編譯器會生成一個包含字節(jié)碼的類文件。

以下是 JRE 的重要組成部分:

  • 類加載器:類加載器加載運(yùn)行 Java 程序所需的各種類。JVM 使用三個類加載器,稱為引導(dǎo)類加載器、擴(kuò)展類加載器和系統(tǒng)類加載器。
  • 字節(jié)碼驗證器:字節(jié)碼驗證器驗證字節(jié)碼,使代碼不會干擾解釋器。
  • 解釋器:一旦加載類并驗證代碼,解釋器就會逐行讀取代碼。
  • 運(yùn)行時間:運(yùn)行時間是主要用于編程的系統(tǒng),用于描述特定程序運(yùn)行的時間段。
  • 硬件:一旦你編譯了 Java 本機(jī)代碼,它就會在特定的硬件平臺上運(yùn)行。

這樣,Java 程序就在 JRE 中運(yùn)行。

JVM如何運(yùn)作?

JVM 功能

以下是 JVM 的重要組件:

1) 類加載器

類加載器是用于加載類文件的子系統(tǒng)。它執(zhí)行三個主要功能:加載、鏈接和初始化。

2) 方法區(qū)

JVM 方法區(qū)存儲類的結(jié)構(gòu),如元數(shù)據(jù)、Java 方法的代碼和常量運(yùn)行時池。

3) 堆

所有對象、數(shù)組和實(shí)例變量都存儲在堆中。此內(nèi)存在多個線程之間共享。

4)JVM語言棧

Java 語言堆棧存儲局部變量及其部分結(jié)果。每個線程都有自己的 JVM 語言堆棧,在創(chuàng)建線程時同時創(chuàng)建。調(diào)用方法時會創(chuàng)建一個新框架,并在方法調(diào)用過程完成時將其刪除。

5) PC 寄存器

PC 寄存器存儲當(dāng)前正在執(zhí)行的 Java 虛擬機(jī)指令的地址。在 Java 中,每個線程都有其單獨(dú)的 PC 寄存器。

6) 原生方法棧

本機(jī)方法棧保存本機(jī)代碼的指令依賴于本機(jī)庫。它在本機(jī)堆上分配內(nèi)存或使用任何類型的堆棧。

7) 執(zhí)行引擎

它是一種用于測試軟件、硬件或完整系統(tǒng)的軟件。測試執(zhí)行引擎從不攜帶任何關(guān)于被測產(chǎn)品的信息。

8) 原生方法API

本機(jī)方法接口是一個編程框架。它允許在 JVM 中運(yùn)行的 Java 代碼由庫和本機(jī)應(yīng)用程序調(diào)用。

9) 原生API庫

本機(jī)庫是執(zhí)行引擎所需的本機(jī)庫(C、C++)的集合。

JDK、JRE 和 JVM 的區(qū)別

以下是 JDK、JRE 和 JVM 之間的主要區(qū)別:

JDK

JRE

虛擬機(jī)

JDK 英文全稱是 Java Development Kit。

JRE 英文全稱是 Java 運(yùn)行時環(huán)境。

JVM英文全稱是Java虛擬機(jī)。

JDK 是一個用 Java 開發(fā)應(yīng)用程序的軟件開發(fā)工具包。

它是一個軟件包,為 Java 類庫提供運(yùn)行 Java 代碼所需的組件。

JVM 執(zhí)行 Java 字節(jié)碼并提供執(zhí)行它的環(huán)境。

JDK 依賴于平臺。

JRE 也依賴于平臺。

JVM 高度依賴于平臺。

它包含用于開發(fā)、調(diào)試和監(jiān)控 Java 代碼的工具。

它包含 JVM 執(zhí)行程序所需的類庫和其他支持文件。

JVM 中不包含軟件開發(fā)工具。

它是 JRE 的超集

它是 JDK 的子集。

JVM 是 JRE 的子集。

JDK 使開發(fā)人員能夠創(chuàng)建可由 JRE 和 JVM 執(zhí)行和運(yùn)行的 Java 程序。

JRE 是創(chuàng)建 JVM 的 Java 部分。

它是執(zhí)行源代碼的 Java 平臺組件。

JDK 附帶安裝程序。

JRE 只包含執(zhí)行源代碼的環(huán)境。

JVM 捆綁在軟件 JDK 和 JRE 中。

JDK 附帶安裝程序。

JRE 只包含執(zhí)行源代碼的環(huán)境。

JVM 捆綁在軟件 JDK 和 JRE 中。


責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2010-09-25 14:58:12

JVMJDKJRE

2009-06-25 14:46:50

JDKJREJVM

2022-06-27 08:24:34

JDKJavaJRE

2009-07-08 10:41:54

JDK JRE JVM

2023-09-27 08:46:44

Java 技術(shù)編程語言

2009-07-08 18:07:58

jvm jre

2022-12-30 16:06:23

JDKJREJVM

2009-07-08 17:59:51

JDK JRE

2010-09-27 14:50:22

JDKJREJVM

2009-07-08 09:47:47

安裝JDKJREJVM

2021-09-10 07:59:31

中斷鎖Java多線編程

2021-07-26 08:29:03

Java SEJREJDK

2010-09-26 14:32:34

JDKJREJVM

2024-01-25 10:23:22

對象存儲存儲數(shù)據(jù)

2022-02-19 22:42:25

加密貨幣代幣區(qū)塊鏈

2024-02-22 12:18:16

Python函數(shù)用法

2024-02-19 00:00:00

Python?starmap函數(shù)

2010-09-27 11:32:41

JVMJREJDK

2022-05-18 10:26:01

藍(lán)牙WiFi

2022-02-16 22:37:00

流式SQLSQL數(shù)據(jù)庫
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 伊人春色成人网 | 欧美一级片免费看 | 精品久久久久久亚洲精品 | 久久久久久久国产精品 | 亚洲国产一区二区在线 | 国产超碰人人爽人人做人人爱 | 欧美成人在线网站 | 91视频在线看| 久久精品一区 | 久久精品久久久久久 | 国产一级一级国产 | 欧美日韩亚洲一区 | 日本特黄a级高清免费大片 国产精品久久性 | 91精品国产91综合久久蜜臀 | 久久午夜视频 | 欧美一级片在线看 | 亚州午夜精品 | 国产欧美性成人精品午夜 | 一区二区三区在线免费 | 亚洲国产高清高潮精品美女 | 国产日韩精品久久 | 最新日韩欧美 | 久久久性色精品国产免费观看 | 久草免费福利 | 午夜性视频 | 久久综合影院 | 久草综合在线 | 国产精品毛片一区二区三区 | 日韩黄a| 亚洲视频在线观看 | 成人在线小视频 | 久草在线在线精品观看 | 国产精品免费在线 | 亚洲免费高清 | 天天综合久久 | 亚洲精品一区二区另类图片 | 中文字幕在线观看www | 国产一区二区三区久久久久久久久 | 日韩精品视频中文字幕 | 久久国产99 | 一区二区三区四区免费视频 |