我在金銀潭第四天:使用記事本編寫運行Java程序

使用記事本編寫運行Java程序

經過上節的操作已經配置完了 Java 的開發環境,但並不清楚所配置的開發環境是否真的可以運行 Java 應用程序。爲了解除這個疑慮,也爲了使讀者對開發 Java 應用程序的步驟有一個初步的瞭解,本節將展示一個完整 Java 應用程序的開發過程。

編寫Java源程序
Java 源程序可以使用任何一個文本編輯器來編寫,這裏以 Windows 下的記事本爲例。

(1) 新建一個空白記事本,然後如實地輸入下列內容。 很多初學者可能不明白此程序的全部意義,沒關係,請完全按照實例的樣式輸入,包括各種括號與標點符號。

/*
*第一個java程序
*/
public class HelloJava {
// 這裏是程序入口
public static void main(String[] args) {
// 輸出字符串
System.out.println(“你好 Java”);
}
}
下面對源代碼中的重要組成元素進行簡單介紹。

關鍵字 public 表示訪問說明符,表明該類是一個公共類,可以控制其他對象對類成員的訪問。
關鍵字 class 用於聲明一個類,其後所跟的字符串是類的名稱。
關鍵字 static 表示該方法是一個靜態方法,允許調用 main() 方法,無須創建類的實例。
關鍵字 void 表示 main() 方法沒有返回值。
main() 方法是所有程序的入口,最先開始執行。
“/”“/”之間的內容和以“//”開始的內容爲 Java 程序的註釋。

(2) 將寫完代碼後的文件另存爲 HelloJava.java,保存類型選擇“所有文件”,接着單擊“保存”按鈕,保存文件到 D:\myJava 文件夾中,如圖 1 所示。

在這裏插入圖片描述

圖 1 保存 HelloJava.java 文件

提示:保存的文件名中不能出現空格,類似“Hello Java.java”的文件名在編譯時會出現找不到文件的錯誤。

編譯和運行
將 Java 源程序編寫並保存到文件之後,還需要進行編譯才能運行。編譯 Java 源程序使用的是 JDK 中的 javac 命令,例如編譯上節的 HelloJava.java,完整命令如下。

javac HelloJava.java
javac HelloJava.java 命令的作用是讓 Java 編譯器獲取 Java 應用程序 HelloJava.java 的源代碼,把它編譯成符合 Java 虛擬機規範的字節碼文件。這時會生成一個新文件 HelloJava.class,此文件便是我們所說的字節碼文件,它也是 JVM 上的可執行文件,如圖 2 所示。

在這裏插入圖片描述

圖 2 生成 HelloJava.class 文件

運行 Java 程序需要使用 JDK 中的 java 命令,例如運行上步生成的 .class 文件,完整命令如下:

java HelloJava
具體的執行效果如圖 3 所示。

在這裏插入圖片描述

圖 3 HelloJava執行效果

對圖片中各個步驟的說明:

選擇“開始”|“運行”命令,打開“運行”對話框後輸入 cmd 命令,按 Enter 鍵進入到 DOS 環境。
輸入 d: 按 Enter 鍵,切換到 Java 源程序所在的 D 盤。
輸入 cd myJava 命令,進入 Java 源程序所在的目錄,即 d:\myJava。
輸入 javac HelloJava.java 命令進行編譯,此時如果沒有任何其他信息,表示該源程序通過了編譯;反之便說明程序中存在錯誤,必須在記事本中打開 HelloJava.java 文件進行修改,再次保存此文件後回到命令提示符窗口重新編譯(可能要反覆幾次),直到編譯通過爲止。
輸入 java HelloJava 命令執行程序,如果出現“你好 Java”字符,說明程序執行成功。
編譯常見錯誤解決方法
在使用 javac 編譯器編譯源代碼文件時,可能會出現下面幾個常見問題。

(1) Error:cannot read:HelloJava.java javac。
工具程序找不到指定的 java 文件,需要檢查文件是否存儲在當前目錄中,或文件名是否錯誤。

(2) HelloJava.java:4:class HelloJava is public,should be declared in a file named MyApplication.java。
源文件中類的名稱和源文件名稱不符,需要確定源文件名稱和類名稱是否相同。

(3) HelloJava.java:6:cannot find symbol。
源程序文件中某些代碼部分輸入錯了,最常產生的原因可能是沒有注意到字母的大小寫。

(4) Javac 不是內部或外部命令、可執行程序或批量文件。
path 設置有誤或沒有在 path 系統變量中加入 JDK 的 bin 目錄。

如果沒有出現上述所列問題,即成功編譯了該 Java 文件。在解釋執行 .dass 文件時,可能會出現下面幾個常見問題。

(1) Exception in thread “main” java.lang.NoClassDe£FoundError。
Java 工具程序找不到所指定的 .class 類,需要確定指定的類是否存儲在當前目錄中,名稱是否正確。

(2) Exception in thread “main” java.lang.NoSuchMetliodError:main。
沒有指定 Java 程序的入口。Java 工具程序指定的類必須有一個程序入口,也就是必須包括 main(String args[]) 這個方法。

提示:在後面的章節中,如果不是特別強調,就不再重複介紹如何編譯與解釋執行 Java 程序。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章