91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

簡述Java程序的運(yùn)行機(jī)制

汽車電子技術(shù) ? 來源:Java爛筆頭 ? 作者:Java爛筆頭 ? 2023-02-28 14:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Java概述(二)

請(qǐng)講一下Java程序的運(yùn)行機(jī)制?

Java程序的運(yùn)行分為編寫 、編譯 、運(yùn)行 三個(gè)步驟:

圖片

運(yùn)行機(jī)制主要是指編譯 、運(yùn)行的過程

1、編譯

Java編譯器對(duì)源文件進(jìn)行錯(cuò)誤排查的過程,編譯后將生成后綴名為.class的字節(jié)碼文件,從而讓JVM(Java虛擬機(jī))里的解釋器可以正常讀取。

2、運(yùn)行

分三步: 代碼的裝入 、校驗(yàn)執(zhí)行

①代碼的裝入

JVM控制解釋器中的“類裝載器”去讀取和裝載程序所需的類(class的字節(jié)碼),然后解釋器開始建立類與類之間的關(guān)系。

②代碼的校驗(yàn)

字節(jié)碼校驗(yàn)器進(jìn)行檢查,校驗(yàn)器可發(fā)現(xiàn)操作數(shù)棧溢出,非法數(shù)據(jù)類型轉(zhuǎn)化等多種錯(cuò)誤。

③代碼的執(zhí)行

  執(zhí)行也分兩種情況

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

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

通常采用的是第二種方法。由于JVM規(guī)格描述具有足夠的靈活性,這使得將字節(jié)碼翻譯為機(jī)器代碼的工作。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    3001

    瀏覽量

    116430
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1672

    瀏覽量

    51602
  • 源文件
    +關(guān)注

    關(guān)注

    0

    文章

    30

    瀏覽量

    4892
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    蘋果宣布iPhone OS 4 多任務(wù)運(yùn)行機(jī)制詳解

    蘋果宣布iPhone OS 4 多任務(wù)運(yùn)行機(jī)制詳解 蘋果今天在公司總部召開發(fā)布會(huì),提前披露了將于今夏發(fā)布的iPhone OS 4操作系統(tǒng)升級(jí)新特性。之前傳言中有關(guān)
    發(fā)表于 04-13 08:48 ?1083次閱讀

    操作系統(tǒng)運(yùn)行機(jī)制

    ,按截止時(shí)間控制運(yùn)行的實(shí)現(xiàn);在批處理系統(tǒng)中,通過時(shí)鐘管理來衡量一個(gè)作業(yè)的運(yùn)行程度等。因此,系統(tǒng)管理的方方面面無不依賴于時(shí)鐘。   2) 中斷機(jī)制   引入中斷技術(shù)的初衷是提高多道程序
    發(fā)表于 01-15 07:12

    Arduino為什么只有l(wèi)oop和setup函數(shù),揭開Arduino的神秘面紗--運(yùn)行機(jī)制

    USBDevice.attch()然后是for循環(huán)里面的串口二、看完后知道了運(yùn)行機(jī)制了吧看下面的點(diǎn)燈程序跟進(jìn)pinMode()函數(shù),基本上都是寄存器和另一些函數(shù)的操作跟進(jìn)digitalWrite()函數(shù)
    發(fā)表于 10-30 17:33

    計(jì)算機(jī)操作系統(tǒng)的運(yùn)行機(jī)制和體系結(jié)構(gòu)

    計(jì)算機(jī)操作系統(tǒng)-運(yùn)行機(jī)制、體系結(jié)構(gòu)
    發(fā)表于 07-09 16:52

    CPU的基本結(jié)構(gòu)和運(yùn)行機(jī)制

    目錄一. CPU的基本結(jié)構(gòu)和運(yùn)行機(jī)制參考《ARM微控制器與嵌入式系統(tǒng)--清華》一. CPU的基本結(jié)構(gòu)和運(yùn)行機(jī)制分析其中的CPU:(ALU、寄存器組、控制單元是必要的,其他非必要)一個(gè)完整的CPU:將
    發(fā)表于 11-03 09:22

    MCU總結(jié)結(jié)構(gòu)和程序運(yùn)行機(jī)制的相關(guān)資料分享

    MCU總結(jié)結(jié)構(gòu)和程序運(yùn)行機(jī)制
    發(fā)表于 11-16 08:45

    Linux系統(tǒng)是如何去實(shí)現(xiàn)多用戶運(yùn)行機(jī)制的呢

    什么是Linux系統(tǒng)呢?Linux系統(tǒng)是如何去實(shí)現(xiàn)多用戶運(yùn)行機(jī)制的呢?
    發(fā)表于 12-29 06:40

    Linux系統(tǒng)的fork運(yùn)行機(jī)制分析

    如果其中一個(gè)進(jìn)程的輸出結(jié)果是“pid1:1001, pid2:1002”,寫出其他進(jìn)程的輸出結(jié)果(不考慮進(jìn)程執(zhí)行順序)。 明顯這道題的目的是考察linux下fork的執(zhí)行機(jī)制。下面我們通過分析這個(gè)題目,談?wù)凩inux下fork的運(yùn)行機(jī)制。
    發(fā)表于 04-26 16:26 ?1429次閱讀
    Linux系統(tǒng)的fork<b class='flag-5'>運(yùn)行機(jī)制</b>分析

    Java程序編譯和運(yùn)行的過程

    Java 虛擬機(jī)(JVM)是可運(yùn)行Java 代碼的假想計(jì)算機(jī)。只要根據(jù)JVM規(guī)格描述將解釋器移植到特定的計(jì)算機(jī)上,就能保證經(jīng)過編譯的任何Java代碼能夠在該系統(tǒng)上
    發(fā)表于 03-09 15:32 ?9498次閱讀

    Java程序設(shè)計(jì)教程之Java語言的基礎(chǔ)知識(shí)概述

    本文檔詳細(xì)介紹的是Java程序設(shè)計(jì)教程之Java語言的基礎(chǔ)知識(shí)概述主要內(nèi)容包括了:1.Java語言發(fā)展簡史,2.Java的特點(diǎn)(為什么要學(xué)習(xí)
    發(fā)表于 02-22 10:28 ?36次下載
    <b class='flag-5'>Java</b><b class='flag-5'>程序</b>設(shè)計(jì)教程之<b class='flag-5'>Java</b>語言的基礎(chǔ)知識(shí)概述

    Java程序是如何運(yùn)行

    ? JVM是Java運(yùn)行時(shí)虛擬機(jī),所有的Java程序都是在JVM沙箱中運(yùn)行,每個(gè)Java
    的頭像 發(fā)表于 12-27 09:31 ?2439次閱讀

    SSL和TLS協(xié)議運(yùn)行機(jī)制的資料詳細(xì)概述

    聯(lián)網(wǎng)的通信安全,建立在SSL/TLS協(xié)議之本文簡要介紹SSL/TLS協(xié)議的運(yùn)行機(jī)制。文章的重點(diǎn)是設(shè)計(jì)思想和運(yùn)行過程,不涉及具體的實(shí)現(xiàn)細(xì)節(jié)。
    發(fā)表于 07-22 08:00 ?2次下載
    SSL和TLS協(xié)議<b class='flag-5'>運(yùn)行機(jī)制</b>的資料詳細(xì)概述

    初學(xué)者:講解Java程序的開發(fā)與運(yùn)行原理

    可能剛剛接觸編程的初學(xué)者會(huì)發(fā)現(xiàn),編寫一個(gè)Java程序其實(shí)很簡單,但是Java程序運(yùn)行過程卻是非常復(fù)雜的。關(guān)于
    的頭像 發(fā)表于 08-13 15:01 ?4037次閱讀
    初學(xué)者:講解<b class='flag-5'>Java</b><b class='flag-5'>程序</b>的開發(fā)與<b class='flag-5'>運(yùn)行</b>原理

    php運(yùn)行機(jī)制和原理

    PHP是一種在服務(wù)器端執(zhí)行的腳本語言,它被廣泛用于開發(fā)動(dòng)態(tài)網(wǎng)站。它的運(yùn)行機(jī)制和原理非常重要,因?yàn)樗鼪Q定了PHP腳本如何被解釋執(zhí)行和與服務(wù)器進(jìn)行交互。 PHP的運(yùn)行機(jī)制 PHP腳本的運(yùn)行機(jī)制涉及到以下
    的頭像 發(fā)表于 12-04 15:28 ?1675次閱讀

    audio核心庫的運(yùn)行機(jī)制與技術(shù)要點(diǎn)

    音頻系統(tǒng)核心庫的穩(wěn)定運(yùn)行,是實(shí)現(xiàn)低延遲、高保真音頻體驗(yàn)的前提。其內(nèi)部通過精密的線程調(diào)度、緩沖區(qū)管理與設(shè)備驅(qū)動(dòng)交互,保障音頻數(shù)據(jù)的連續(xù)性與同步性。本文將聚焦其運(yùn)行機(jī)制,逐層拆解關(guān)鍵技術(shù)要點(diǎn),幫助開發(fā)者
    的頭像 發(fā)表于 02-06 19:17 ?37次閱讀
    audio核心庫的<b class='flag-5'>運(yùn)行機(jī)制</b>與技術(shù)要點(diǎn)