通常開發一個java應用程序可分為三個步驟:
1.創建一個帶有文件擴展名 *.java 的源文件
1).使用編輯器(如記事本,小編使用的是notepad++),輸入以下6行文本:
1 //一個簡單的application例子:列印一行文本
2 class Hello {
3 public static void main (String args[]){
4 System.out.println("Hello Java,This is my first Java Application!");
5 }
6 }
輸入完成,如下圖所示
爪哇之路開啟成功。
② javac命令和java命令做什麼事情
javac命令是用來編譯源代碼文件的,即xxx.java文件的, 如:javac Test.java 這樣就會生成Test.class文件。
java 是運行java程序的,即執行類的,比如:java Test 就可以運行剛生成的Test.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代碼:
任務
我們有一個相當標準的Java工程,它包含三個頂層文件夾:
/bin-用來存放已編譯好的.class文件
/lib-用來存放第三方.jar文件
/src-存放.java源代碼
我的任務就是要從Java工程根目錄去編譯和運行工程。我們將使用Windows操作系統作為例子(和在Unix系統上的唯一區別就是路徑分隔符是」:「而不是」;「)。
編譯Java代碼
第一步是把文本文件.java源代碼編譯成Java虛擬機位元組碼文件(.class)。這一步使用一個叫javac的JDK工具來完成。
假設我們在應用的根目錄下,從com.example包下嘗試把Application.java文件,以及把lib文件夾中的lib1.jar和lib2.jar庫編譯到目標文件夾bin下,編譯命令應該是如下格式:
javac -d bin -sourcepath src -cp lib/lib1.jar;lib/lib2.jar src/com/example/Application.java1
編譯完後,/bin/com/example/Application.class應該就會創建出來了。如何Application.java使用了其他工程的類,那麼他們全部會自動被編譯並且放到相應的文件夾下。
運行Java代碼
為了啟動我們剛剛編譯的.class文件,需要另外一個叫java的JDK工具。
假設我們在應用的根目錄下,為了能夠啟動com.example包中的,使用了lib文件夾下的lib1.jar和lib2.jar庫的Application.class文件,啟動命令應該是如下
java -cp bin;lib/lib1.jar;lib/lib2.jar com.example.Application
我們在這里沒有提供文件名,只有一個實際的類名,java會基於提供的classpath(縮寫成cp)路徑去搜索。
⑤ JDK的編譯和運行程序命令是什麼個針對什麼類型文件
javac:
編譯命令,將java源文件編譯成.class位元組碼文件。
例如:
javacDemo.java
注意這里是源文件
同目錄下會生成Demo.class文件。
java:
運行位元組碼文件,由java虛擬機對位元組碼進行解釋和運行。
例如:
javaDemo
注意這里是文件名
注意事項:
(1) 配置好jdk環境變數,可以運行命令java、javac來測試。
(2) 先javac Demo.java(編譯),後java Demo(運行)
(3) 注意java Demo(文件名,不帶後綴)
(5)運行編譯好的位元組文件使用的命令擴展閱讀:
Java 面向對象編程三大特性:封裝、繼承、多態
封裝
類:封裝的是對象的屬性和行為
方法:封裝的是一段特定的業務邏輯功能
訪問控制修飾符:封裝的是具體訪問的許可權
繼承
作用:代碼復用
超類:所有派生類所共有的屬性和行為
介面:部分派生類所共有的行為
派生類:派生類所特有的屬性和行為
傳遞性,單一繼承、多介面實現
⑥ JDK的編譯和運行程序命令是什麼個針對什麼類型文件
javac針對.java文件,編譯源代碼為位元組碼文件
java針對.class文件,JVM解釋執行程序
⑦ win7下如何用cmd編譯Java源文件並運行位元組碼
假設現在已經用記事本編了一個Welcome.java的源文件,它被存放在e:\javabook文件夾下,先用cmd對該源文件進行編譯如下:
在開始菜單下運行cmd命令,一般顯示在眼前的第一行命令是"C:\Users\用戶名>",1.這時先打開e盤,直接輸入「e:」,再按回車,會出現「E:\>」;2.緊接著輸入「cd
e:\javabook」,按回車,出現「e:\javabook>」;3.緊接著輸入「javac
Welcome.java」,回車會再次出現「e:\javabook>」,此即表示編譯成功的Java位元組碼.class文件被存放的路徑,即和Java源文件在同一目錄下;
4.當需要指定生成的.class文件位置如改放在"e:\javabook1"
時,可以在第二步後接跟著使用命令
「javac
-d
e:\javabook1
Welcome.java"即可在文件夾"e:\javabook1"中生成「Welcome.class".5.最後要運行「Welcome.class」時,就在第3步後緊接輸入「java
Welcome」即可運行java位元組碼。