你可能已經迫不及待想安裝Java,寫個Java程式跑起來了。但在這之前,有些概念需要事先了解,因為Java跟C、C 和Python都有點不一樣。
我們在文字檔案中編寫英文程式碼,這些英文電腦是看不懂的,因此需要做一下轉換,轉換為電腦能識別和運行的格式,這個轉換,是由「編譯器」來完成的。有些語言沒有編譯器,但是Java是有的。
編譯器轉換後的文件,通常叫做二進位文件,或是執行檔。文件內容從英文變成了字節碼。字節碼只有計算機能看懂,人是看不懂的,我們也不必關心,只需要保證我們寫的英文程式碼,能正確通過編譯即可。執行的事,就交給計算機來做。
Java程式碼檔案以.java結尾,Java執行檔以.class結尾。
Java檔案裡面的所有程式碼,都必須放在「Java Class」裡面:
public class MyFirstClass { }
檔案名稱必須叫做MyFirstClass.java,檔案名稱跟類別名稱必須保持一致。為什麼Java要設計得這麼嚴格呢?方便,讓你看到檔名,就能知道類別名是啥,不用去猜。
如何編譯類別檔案呢?下載Java。
下載Java,就是下載JDK,Java Development Kit,裡麵包含了Java編譯器,將MyFirstClass.java 編譯為MyFirstClass.class。
所謂的JRE,Java Runtime Environment,它是JDK的一部分,只能用來執行Java程序,不能用來編譯。
下載位址:https://jdk.java.net/
#安裝後需依照作業系統(Windows、Linux、macOS)設定環境變數JAVA_HOME和PATH。
驗證安裝成功:
java -version
使用javac指令編譯:
javac MyFirstClass.java
如果程式碼有問題,會出現報錯。如果沒問題,就會產生MyFirstClass.class檔案。
新增程式碼:
public class MyFirstClass { public static void main(String... args) { System.out.println("Hello, World!"); } }
重新編譯,確保產生了class文件,使用java命令運行:
java MyFirstClass
運行成功,控制台會印出一句:Hello, World!
問題1:javac HelloWorldApp,錯誤:
Class names, 'HelloWorldApp', are only accepted if annotation processing is explicitly requested
javac HelloWorldApp.java 編譯指令「javac」後面應該跟“文件名”。
問題2:java HelloWorldApp.class,報錯:
Could not find or load main class HelloWorldApp.class
java HelloWorldApp 執行指令「java」後面要跟「類別名稱」。
可以指令Help看到差異:
javac Usage: javac <options> <source files>
java Usage: java [-options] class [args...] (to execute a class) orjava [-options] -jar jarfile [args...] (to execute a jar file)
在複雜應用程式開發時,並不會直接使用javac和java指令,而是使用IDE,Integrated Development Environment,整合開發環境,例如Eclipse、NetBeans和IntelliJ IDEA。
參考資料:Getting Started with Java https://dev.java/learn/getting-started
以上是Java官方筆記之編寫運行Java程序的詳細內容。更多資訊請關注PHP中文網其他相關文章!