1. 程式人生 > >第一章 第四節 Hello World程式

第一章 第四節 Hello World程式

1、第一個HelloWorld程式

  上節完成Java環境變數配置之後,我們就可以寫第一個程式了。

  首先,我們在硬碟上建立一個test.txt檔案,並把test.txt檔案改成字尾為.java的test.java檔案,並用記事本開啟,寫下如下程式碼:

class HelloWorld{
    public static void main(String[] args){
        System.out.println("Hello World");
    }
}

  程式碼寫完記得儲存哦。然後在命令列模式下進入這個.java檔案所在的目錄,使用javac test.java命令進行編譯:

  在編譯完成之後,會在目錄下生成一個相應的HelloWorld.class檔案,如下圖:

之後,在命令列上,用下面命令來執行:

java HelloWorkd

執行結果如下:

這是,會在螢幕上打印出一個"Hello World"的字串。如果你是一個初學者,從本微博第一章第一節開始學習,請務必看到Hello World 字串在繼續學習。

  1.1、深入瞭解Hello World程式

  我們首先來研究和分析一下test.java這個程式中的程式碼:

class HelloWorld{
    public static void main(String[] args){
        System.
out.println("Hello World"); } }

  首先,第一行:class HelloWorld,這句話定義了一個名字叫做HelloWorld的類。其中,class是Java語言的關鍵字,而HelloWorld則是定義這個類的名字。

  至於什麼是類,這個概念在此不做多於的介紹,會在後面的文章中做出解釋,如果你是一個初學者,那麼,你可以理解為:類是程式碼的容器。也就是說,在Java中絕大部分程式碼都要寫在類的範圍內,要寫程式碼就必須先定義一個類。

  在定義完HelloWorld之後,後面有一對花括號,花括號中內容表示的是這個類中的內容。

  在這個花括號中,下面的就是這行:

  public static void main(String[] args)

  這一行定義了一個主方法(也叫主函式)。主方法的定義比較長,但是非常有用,如果你是一個初學者,這行程式碼必須記住,也許你現在無法理解這些內容,但是我會在之後的文章中會解釋。那麼主方法有什麼作用呢?我們通常把主方法稱之為:程式執行的入口。也就是說,java程式在執行的時候,會執行類中的主方法,當主方法執行完畢之後,程式也就退出了。

  在主方法內部,就是下面這句程式碼:

  System.out.println(" Hello world");

  這是Java的一個語句。注意,每一個Java語句都應當以分號結尾。這個語句含義是在螢幕上打印出一個字串。這個字串的內容就是括號中的"Hello World"。並且,這個語句列印完字串之後,還會進行自動換行,如果不換行,則是 System.out.print("Hello World");程式碼如下:

class HelloWorld{
    public static void main(String[] args){
        System.out.print("learn java");
        System.out.print("Hello World");
    }
}

輸出結果:

輸出完learn java之後並沒有換行。

1.2、類與.class檔案

  我們注意到,在編譯test.java之後,會產生一個名為HelloWorld的.class檔案,這個.class檔案的檔名與我們在test.java中定義的類名一模一樣。換句話說,一個.java檔案中定義的每一個類,在編譯之後,都會生成一個和類名完全一樣的.class檔案。這個.class檔案不是可執行檔案,是"二進位制位元組碼檔案"。用文字編輯器是無法正常開啟的。

  我們在test.java檔案中定義兩個類。

class HelloWorld{
	public static void main(String[] args){
		System.out.print("learn java");
		System.out.print("Hello World");
	}
}
class Welcome{
	public static void main(String[] args){
		System.out.println("Welcom to learn java");
	}
}

  我們在命令列中進行編譯test.java檔案。編譯之後,會生成兩個.class檔案,一個是HelloWorld.class檔案和Welcome.class檔案。如圖:

編譯之後,執行時,執行的是.class檔案,但是需要注意的是,使用的是java + 類名執行,而不能有.class這個字尾。比如,我們要執行Welcome類,則使用的命令是java Welcome而不是java Welcome.class命令,這是很多初學者經常犯的錯誤。還有要注意的是:我們使用java Welcome執行Welcome類時,JVM需要在硬碟上找到相應的Welcome.class檔案。此時,JVM會通過CLASSPATH變數的指示,來尋找.class檔案。由於我們把CLASSPATH配置成了一個".",這表示當前目錄,因此,JVM就會在當前目錄下尋找Welcome.class檔案。

 1.3、類與公開類

   如果我們給HelloWorld類增加一個字首:public,則此時,HelloWorld就不是一個普通模的類了,而變成一個公開類。程式碼如下:

public class HelloWorld{
    public static void main(String[] args){
        System.out.print("learn java");
        System.out.print("Hello World");
    }
}

  公開類有自己的特殊性,此時在編譯test.java時,則會產生一個編譯時的錯誤,錯誤如下:

  這個錯誤說明,如果要使用一個公開類,則公開類的類名必須和原始檔名相同(包括大小寫)。為了修正這個錯誤,我們必須把原始檔的名字test.java改成HelloWord.java,再次編譯才能通過。由於一個.java檔案只能有一個檔名,因此一個.java檔案中最多隻能有一個公開類,當然,如果不是公開類的話,一個.java檔案中可以有多個類。

  對於從本微博學習的初學者,建議一些忠告:動手敲程式碼,前期不要使用IDE等強大的編譯器,建議使用notepad++等文字編譯器。這對你對java初級語法理解十分重要,打下紮實的基礎。對你的成長十分重要。。。