国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 Java Java基礎(chǔ) javac編譯包含哪幾個過程

javac編譯包含哪幾個過程

Jun 18, 2020 pm 01:38 PM
javac

javac編譯包含哪幾個過程

javac編譯包含哪幾個過程

java編譯過程主要分一下幾步:

1、詞法分析: 把源代碼中的字符(各個關(guān)鍵字、變量等)轉(zhuǎn)為標記(Token)集合,單個字符的程序編寫的最小單元,而token是編譯過程的最小單元。

2、語法分析: 將標記(Token)集合構(gòu)造為抽象語法樹。語法樹的每一個節(jié)點都代表代碼中的一個語法結(jié)構(gòu)(如包、類型、接口、修飾符等等)。

3、填充符號表:符號表是有一組符號地址和符號信息構(gòu)成的表格。填充符號表的過程的出口是一個待處理列表,包含了每一個抽象語法樹(和package-info.java)的頂級節(jié)點。

4、插入式注解處理器處理注解: 注解處理器可以增刪改抽象語法樹的任意元素。因此每當注解處理器對語法樹進行修改時,都將重新執(zhí)行1,2,3步,直到注解處理器不再對語法樹進行修改為止。每一次的循環(huán)過程都稱為一次Round。

5、語義分析:對語法樹結(jié)構(gòu)上正確的源程序進行上下文有關(guān)的審查。

  • 標注檢查:包括是否變量聲明、變量和賦值類型是否匹配等、常量折疊。

  • 數(shù)據(jù)和控制流分析:對程序上下文邏輯更進一步驗證。包括變量使用前是否賦值、方法是否有返回值、異常是否被正確處理等。

6、解語法糖: 把高級語法(如:泛型、可變參數(shù)、拆箱裝箱等)轉(zhuǎn)為基礎(chǔ)語法結(jié)構(gòu),虛擬機運行時不支持這些高級語法。

7、生成字節(jié)碼:把語法樹、符號表里的信息轉(zhuǎn)為字節(jié)碼寫到磁盤,同時進行少量的代碼添加和轉(zhuǎn)換工作。

以上內(nèi)容大部分摘自:《深入理解java虛擬機》 -- 周志明

推薦教程: 《java教程

以上是javac編譯包含哪幾個過程的詳細內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權(quán)歸原作者所有,本站不承擔相應(yīng)法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276
Javac和Java的區(qū)別 Javac和Java的區(qū)別 Oct 25, 2023 pm 02:54 PM

Javac和Java的區(qū)別主要體現(xiàn)在功能、參數(shù)配置、使用場景、編譯過程與執(zhí)行過程、交互性和版本兼容性等方面。詳細介紹:1、功能,Javac是Java編譯器,它的主要功能是將Java源代碼編譯成字節(jié)碼,以生成可執(zhí)行的Class文件,Java命令則是Java運行時環(huán)境的一部分,它的主要功能是執(zhí)行Java程序或者jar包;2、參數(shù)配置,Javac和Java的參數(shù)配置也有所不同等等。

javac不是內(nèi)部或外部命令怎么回事 javac不是內(nèi)部或外部命令怎么回事 Mar 21, 2024 pm 03:47 PM

“javac 不是內(nèi)部或外部命令”錯誤表明系統(tǒng)無法識別 javac 命令。javac 是 Java 編譯器,用于將 Java 源代碼編譯為字節(jié)碼。此錯誤通常出現(xiàn)在以下情況下: * 未安裝 Java 開發(fā)工具包 (JDK)。 * JDK 安裝路徑未添加到環(huán)境變量。

java成功javac不成功怎么解決 java成功javac不成功怎么解決 Mar 21, 2024 pm 03:51 PM

解決步驟包括:檢查JDK安裝、找到JDK安裝路徑、將JDK的bin目錄添加到PATH環(huán)境變量、驗證環(huán)境變量、檢查javac版本、重新安裝JDK、使用絕對路徑運行javac,并確保在進行更改后重新啟動命令行窗口。

Java官方筆記之編寫運行Java程序 Java官方筆記之編寫運行Java程序 Apr 12, 2023 am 08:49 AM

你可能已經(jīng)迫不及待想安裝Java,寫個Java程序跑起來了。但是在這之前,有些概念需要提前了解,因為Java跟C、C++和Python都有點不一樣。編譯和執(zhí)行?我們在文本文件中編寫英文代碼,這些英文計算機是看不懂的,因此需要做一下轉(zhuǎn)換,轉(zhuǎn)換為計算機能識別和運行的格式,這個轉(zhuǎn)換,是由「編譯器」來完成的。有些語言沒有編譯器,但是Java是有的。編譯器轉(zhuǎn)換后的文件,通常叫做二進制文件,或者可執(zhí)行文件。文件內(nèi)容從英文變成了字節(jié)碼。字節(jié)碼只有計算機能看懂,人是看不懂的,我們也不用關(guān)心,只需要保證我們編寫的

如何解決'javac不是內(nèi)部或外部命令'的問題 如何解決'javac不是內(nèi)部或外部命令'的問題 Jan 03, 2024 am 09:44 AM

javac不是內(nèi)部或外部命令怎么辦,在使用環(huán)境變量等配置后,用戶們時常會遇到這種情況等,導(dǎo)致使用無法正常的進行,這種問題可能是因為設(shè)置不當?shù)膯栴},或者環(huán)境配置有問題,那就來這里看看詳細的教程以及解決方法吧~javac不是內(nèi)部或外部命令怎么辦:1、找到j(luò)ava安裝下的bin目錄,運行,輸入,能提示,說明環(huán)境配置有問題2、然后打開輸入:3、看看java相關(guān)的java相關(guān)路徑有沒有多余的符號,比如多出分號,逗號。如上圖一樣便是正常路徑正確的:錯誤的:4、錯誤以后右鍵,點擊選擇5、然后在左側(cè)打開6、然后

javac不是內(nèi)部或外部命令也不是可運行的程序 javac不是內(nèi)部或外部命令也不是可運行的程序 Aug 02, 2023 am 11:57 AM

javac不是內(nèi)部或外部命令也不是可運行的程序解決方法:1、確認JDK是否正確安裝;2、配置環(huán)境變量,打開系統(tǒng)的屬性窗口,點擊“高級系統(tǒng)設(shè)置”,點擊“環(huán)境變量”按鈕,在“系統(tǒng)變量”中找到“Path”變量,點擊“編輯”按鈕,在變量值的末尾添加JDK的安裝路徑;3、檢查JDK安裝路徑;4、檢查防火墻和殺毒軟件;5、重新安裝JDK。

從根源探究javac不是內(nèi)部或外部命令的解決方案 從根源探究javac不是內(nèi)部或外部命令的解決方案 Mar 29, 2024 pm 04:42 PM

Java中javac不是內(nèi)部或外部命令的解決方案在進行Java編程的過程中,我們經(jīng)常會使用命令行窗口執(zhí)行javac命令來編譯Java源代碼文件。然而,有時候在執(zhí)行javac命令時會出現(xiàn)“javac不是內(nèi)部或外部命令”的錯誤提示,這會導(dǎo)致我們無法正常編譯Java程序。本文將從根源探究這一問題,并提供解決方案,同時附上具體的代碼示例。1.問題根源分析當我們在命

win7javac不是內(nèi)部或外部命令怎么辦 win7javac不是內(nèi)部或外部命令怎么辦 Dec 23, 2023 am 09:57 AM

很多用戶們在win7系統(tǒng)中使用javac時,發(fā)現(xiàn)javac無法正常的運作使用等,其實這個問題應(yīng)該是因為沒有安裝jdk,所以導(dǎo)致無法正常的運作使用哦。如果兩者都安裝了還是無法使用,就得需要去進行環(huán)境變量的設(shè)置了~win7javac不是內(nèi)部或外部命令怎么辦:1、首先檢查jdk與jre是否都已安裝成功,如果安裝完成后還是無法進行配置,請執(zhí)行以下操作。2、打開環(huán)境變量設(shè)置,然后找到進行編輯,變量值放入你的安裝位置,例如:3、然后找到。輸入4、然后再打開,輸入。然后確定保存以后,就能夠進行正常的配置使用了

See all articles