聚沙成塔,歡迎你們關注個人微信公衆號,共同探討Java相關技術html
今天的重點是:編寫源代碼、編譯、運行、查當作果。除此以外,還須要搭建起與前面學習的知識的聯繫。vue
寫本文時依據的系統環境是Windows10哦!請悉知!java
今天咱們編寫本身的第一個Java程序。它主要的功能是向控制檯輸出一個」Hello World!」和一個隨機數以及傳入的參數args數組的長度。嗯,全部demo的開端,」Hello World!」。代碼以下:編程
import java.util.Random;
public class MyFirstDemo {
public static void main(String [] args) {
System.out.println("Hello World!");
System.out.println(new Random().nextInt());
System.out.println(args.length);
}
}
注意:請不要用Windows自帶的記事本編輯,因爲Windows的緣由會致使程序沒法運行數組
建議下載名叫notepad++
的編輯器。把上述代碼鍵入後,保存,並把擴展名改成.java
。在Windows中默認不會顯示文件的擴展名,具體怎麼設置顯示擴展名,請參考:http://www.javashuo.com/article/p-vbsyqrxp-mw.html微信
注意:保存的文件名,必定要和類名一致。好比類名是MyFirstDemo,那麼對應的文件名應該是MyFirstDemo.java,不然但是會報錯的喲!markdown
首先經過import
引入了java.util
包中的Random類,該類主要用於生成隨機數。在Java中,默認java.lang
包是自動導入
的,所以包中的類咱們能夠直接使用。可是若是你要使用當前包之外的其餘包中的類,好比你當前在com.baidu.service
包中,想要用到com.baidu.dao
包中的類,那你就要用import
導入了。app
接下來用class關鍵字聲明瞭一個名爲MyFirstDemo
(或者稱做數據類型),並用public修飾符修飾,表示這個類在任何地方均可以被訪問
。dom
而後定義了一個名爲main
的方法,其被static
修飾,返回類型爲void
,參數爲一個String數組
。咱們前面講到過static修飾的方法不依賴具體對象,能夠直接經過類名調用
。若是你但願你的程序可以獨立運行,一個main
方法是必須的
,它做爲整個程序的入口。且其名稱只能爲main
,這是強制規定。編輯器
這樣就比較好理解了。在進入程序後,對象纔會進行建立;因此做爲程序入口的main方法
,必然是不依賴於具體對象的,也就是說,用static
進行修飾是必然的
。
關於其字符串數組類型的參數,主要是用於接收從控制檯輸入的值的,稍後的演示中請關注第三個輸出值的變化
。
最後在方法體中輸出了三個值,」Hello World!」,一個隨機數,字符串數組參數args
的長度。
Java是編譯型的語言
,意味着Java源代碼須要進行編譯後才能夠運行。經過編譯器,Java源代碼編譯成JVM
可以認識的字節碼文件
,這樣JVM就能運行咱們編寫的代碼了。這也是Java跨平臺的緣由,一切依靠JVM,全部的源碼都要轉成JVM能識別的字節碼。因此在接下來你會看見,在咱們運行編譯以後,會生成一個.class
文件。
JVM(Java Virtual Machine),包含於JRE中的Java虛擬機,Java程序運行在這裏
閒話少說,咱們開始動手吧!請進入你編寫的源碼文件所在的目錄,按下shift鍵的同時,按下鼠標右鍵,選擇在此處打開Shell窗口(也多是打開PowerShell窗口)。以下:
輸入編譯指令javac MyFirstDemo.java
。有兩個注意點,第一,用的指令是javac
,意爲java compile
;第二,須要跟的是包含擴展名的文件名稱,由於要指定要編譯的具體文件。按下回車,開始編譯,通常請開給你下,按下回車後不會拋出任何錯誤,以下:
咱們打開源文件所在目錄,看看是否多了一個.class
結尾的文件呢?沒錯,這就是字節碼文件。
若是由於你的粗心,可能會形成編譯過程出錯,可能出現的錯誤以下:
輸入編譯指令時,文件名稱沒有帶擴展名,報的錯誤以下:
文件名稱和類名不等時,報的錯誤以下:
編譯完成後,咱們離成功就剩最後一步了。接下來,咱們繼續在Shell(或PowerShell或CMD命令行)中按需鍵入指令。
鍵入指令java MyFirstDemo
,結果以下:
鍵入指令java MyFirstDemo -client
,結果以下:
注意看第三個輸出的值哦!因爲咱們使用了一個參數,它變成1了哦
須要注意的是,這個命令跟編譯的命令也有不一樣點哦!可能剛開始會混淆,各位老鐵必定要細心啊!這個指令,用的是java
而不是javac
,是運行的意思;另外一方面,後面接的是類名
,而不是帶擴展名的文件名稱哦!
本文咱們編寫了一個能獨立運行的簡單的Java程序,也是咱們的第一個Java程序。依靠最原始的方式,從編寫源代碼,而後編譯,再運行!這一步你必定要親手作,這樣才能更深刻的瞭解Java程序的運行。
在實際的開發中,並不須要這麼複雜!
下一節,給你們介紹一款好用的開發集成工具。有了它,你的編程效率可以獲得極大的提高。