如何使用記事本編寫運(yùn)行Java程序?

經(jīng)過上節(jié)的操作已經(jīng)配置完了Java的開發(fā)環(huán)境,但并不清楚所配置的開發(fā)環(huán)境是否真的可以運(yùn)行 Java 應(yīng)用程序。為了解除這個疑慮,也為了使讀者對開發(fā) Java 應(yīng)用程序的步驟有一個初步的了解,本節(jié)將展示一個完整 Java 應(yīng)用程序的開發(fā)過程。

編寫Java源程序

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

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

/*
*第一個java程序
*/
public class HelloJava {
    // 這里是程序入口
    public static void main(String[] args) {
        // 輸出字符串
        System.out.println("你好 Java");
    }
}

下面對源代碼中的重要組成元素進(jìn)行簡單介紹。

  • 關(guān)鍵字 public 表示訪問說明符,表明該類是一個公共類,可以控制其他對象對類成員的訪問。
  • 關(guān)鍵字 class 用于聲明一個類,其后所跟的字符串是類的名稱。
  • 關(guān)鍵字 static 表示該方法是一個靜態(tài)方法,允許調(diào)用 main() 方法,無須創(chuàng)建類的實例。
  • 關(guān)鍵字 void 表示 main() 方法沒有返回值。
  • main() 方法是所有程序的入口,最先開始執(zhí)行。
  • “/”“/”之間的內(nèi)容和以“//”開始的內(nèi)容為 Java 程序的注釋。

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



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

編譯和運(yùn)行

將 Java 源程序編寫并保存到文件之后,還需要進(jìn)行編譯才能運(yùn)行。編譯 Java 源程序使用的是 JDK 中的 javac 命令,例如編譯上節(jié)的 HelloJava.java,完整命令如下。

javac HelloJava.java

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

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

java HelloJava

具體的執(zhí)行效果如圖所示。

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

  1. 選擇“開始”|“運(yùn)行”命令,打開“運(yùn)行”對話框后輸入 cmd 命令,按 Enter 鍵進(jìn)入到 DOS 環(huán)境。
  2. 輸入 d: 按 Enter 鍵,切換到 Java 源程序所在的 D 盤。
  3. 輸入 cd myJava 命令,進(jìn)入 Java 源程序所在的目錄,即 d:\myJava。
  4. 輸入 javac HelloJava.java 命令進(jìn)行編譯,此時如果沒有任何其他信息,表示該源程序通過了編譯;反之便說明程序中存在錯誤,必須在記事本中打開 HelloJava.java 文件進(jìn)行修改,再次保存此文件后回到命令提示符窗口重新編譯(可能要反復(fù)幾次),直到編譯通過為止。
  5. 輸入 java HelloJava 命令執(zhí)行程序,如果出現(xiàn)“你好 Java”字符,說明程序執(zhí)行成功。

編譯常見錯誤解決方法

在使用 javac 編譯器編譯源代碼文件時,可能會出現(xiàn)下面幾個常見問題。

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

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

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

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

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

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

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

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容