java編譯後怎麼生成位元組
產生:byte codex0dx0ax0dx0aJava位元組碼是Java源文件編譯產生的中間文件x0dx0ajava虛擬機是可運行java位元組碼的假想計悔昌蔽算機 java的碧州跨平台性也是相對與其他編程語言而言的x0dx0a先介紹一下c語言的編譯過程吧先是C語言源程序 也就是c的文件經過C編譯程序編譯後,生成windows可執行文件exe文件,然後在windows中執行。再介紹java的編譯過程先是java源程序擴展名為java的文件,由java編譯程序將java位元組碼文件,就是class文件然後在java虛擬機中執行。機器碼是由CPU來執行的。Java編譯後是位元組碼, 電腦只能運行機器碼。Java在運行的時候把位元組碼變成機器碼。C/迅襪C++在編譯的時候直接編譯成機器碼。
❷ 將Java編譯成位元組碼的命令程序是
Java編譯器將Java源代茄兄碼編顫鍵襲譯成Java位元組碼文件,其命令行程序為javac。在命令行中使用javac命令,後跟待編譯的Java源代碼文件名,即可將其編譯成位元組碼亮掘文件。例如,javac HelloWorld.java命令會將名為HelloWorld.java的源代碼文件編譯成名為HelloWorld.class的位元組碼文件。
❸ java源程序編譯後生成的位元組碼文件擴展名為
Java源程燃豎序編譯後生成的位元組碼文件擴展名為.class。每個.class文件皮褲中包含了對應Java源文件中的一個類或者介面的位元組碼。這些位元組碼可以被Java虛擬皮握大機(JVM)解釋和執行。通常情況下,Java編譯器(javac)會將每個Java源文件編譯成一個.class文件,並將它們存放在與源文件相同的目錄中。如果您使用的是IDE(集成開發環境),那麼IDE會自動為您編譯Java源文件,並生成相應的.class文件。
分享
❹ 北大青鳥java培訓:位元組碼指令的編譯與執行
java編程開發是目前市場上使用范圍非常廣泛的一種編程開發語言。
今天我們就一起來了解一下,在java編程中關於位元組碼的一些指令的編譯與執行方法。
java文件編譯後的class文件,java跨平台的中間層,JVM通過對位元組碼的解釋執行(執行模式,還有JIT編譯執行,下面講解),屏蔽對操作系統的依賴。
一個位元組(8位)可以儲存256中不同的指令,這樣的指令就是位元組碼,java所有指令有200個左右,這些指令組成了位元組碼文件(.class)。
一、位元組碼的主要指令:.class文件裡面的十六進制文件,其中CAFEBABE是標志這個文件為java的編譯後的文件,00000034代表版本號,01670700一個位元組(8位)就是一個位元組指令,由於數值指令太難看懂,我們可以用javap將指令翻譯為助記指令。
1、載入或儲存指令在棧幀中,通過指令操作數據在局部變數表與操作棧間傳遞。
ILOAD、ALOAD:將int、對象引用類型從局部變數表壓入操作棧頂;ISTORE、ASTORE:將int、對象引用類型從操作棧頂儲存到局部變數表裡;ICONST、BIPUSH、SIPUSH、LDC:將族敗常亮載入到操作棧頂。
2、首行運算指令對操作棧上的值進行運算,並把結果寫入操作棧頂者穗嘩,如IADD、IMUL。
3、類型轉換指令I2L、D2F4、對象創建與訪問指令NEW除了位元組碼指令外,甘肅電腦培訓http://www.kmbdqn.cn/認為還包括像LINENUMBER儲存位元組碼與源碼對應,方便調試定位;LOCALVARIABLE儲存當前方法使用到的局部表量表。
二、java源碼文件轉化為位元組碼(.class)文件的過程JAVA源文件---------->詞法解析---------->語法解析---------->語義分析--------->生成位元組碼--------->位元組碼文件詞法分析:根據空格分割出單詞、操作符等,形成token信息流;語法分析:根據token流和java語法規范生成語法樹;語義分析:檢查關鍵字、類型匹配是否正確;
❺ 如何把JAVA源代碼轉化為位元組碼
源代洞隱橡碼文件:.java
編譯後成納旁為位元組碼文件:.class
.class文件可以通過jvm將位元組碼解釋攜枯成機器指令
❻ 怎麼用JDK把源文件編譯成位元組碼文件(JAVA)
安裝好JDK
右擊我的電腦,選擇高級選項卡,裡面有個環境變數的按鈕,點擊進去開始配置環境變數
配置環境變數需要做一下幾個步驟:
1.打開環境變數,可選擇用戶變數或者是系統變數中的path,如果用戶變數中沒有path,就直接選擇系統變數的path,雙擊打開它,在最末端加上分號,在加上你的JDK安裝的目錄,然後再新建一個變數名叫classpath,其值為: .; (注意是一個點再加上一個分號)再加上Java的安裝目錄下jdk包下的lib包目錄,如果要保險點就再加上Java安裝目錄下jre包下的lib包,然後點確定退出環境變數
重新啟動cmd 敲Javac試試看!
❼ java程序編譯後會產生位元組碼還是機器碼
java編譯後的是位元組碼。
位元組碼,為java源代碼編核兄譯完成後,由JVM轉爛氏昌換成的文件,可以在任何裝有JVM的系統飢扒上,轉化相應的機器語言。
機器碼:即機器語言,表示的就是運行位元組碼文件後的二進制序列。
❽ 請問java源文件編譯後怎麼生成位元組碼文件
ActionListener listener = new ActionListener(){
public void actionPerformed(ActionEvent e){
switchCard();
}
}; //為什麼加一個";"號敏蘆賣殲呢?
這是一條語句,簡化之後是這橋配帶樣的
ActionListener listener = new ActionListener(){ public void actionPerformed(ActionEvent e){ switchCard(); }}; //為什麼加一個";"號呢?
這個好像是叫內部類吧還是什麼東西來著