C語言中文網 目錄

Java程序的基本要素

盡管《Java程序應用實例》一節中的實例很簡單,但它包括所有 Java 程序具有的基本要素及幾個關鍵特性。現在以《Java程序應用實例》中的 HelloJava.java 為例說明 Java 程序的基本要素及編碼規范。在該應用程序中包含的元素有:標識符、關鍵字、注釋、修飾符、語句、塊、類以及 main() 方法。要創建一個程序,必須理解這些基本元素。下面分別介紹這些元素。

標識符

Java 中標識符是為方法、變量或其他用戶定義項所定義的名稱。標識符可以有一個或多個字符。在 Java 語言中,標識符的構成規則如下。
  • 標識符由數字(0~9)和字母(A~Z 和 a~z)、美元符號($)、下劃線(_)以及 Unicode 字符集中符號大于 0xC0 的所有符號組合構成(各符號之間沒有空格)。
  • 標識符的第一個符號為字母、下劃線和美元符號,后面可以是任何字母、數字、美元符號或下劃線。

另外,Java 區分大小寫,因此 myvar 和 MyVar 是兩個不同的標識符。

提示:標識符命名時,切記不能以數字開頭,也不能使用任何 Java 關鍵字作為標識符,而且不能賦予標識符任何標準的方法名。

標識符分為兩類,分別為關鍵字和用戶自定義標識符。
  1. 關鍵字是有特殊含義的標識符,如 true、false 表示邏輯的真假。
  2. 用戶自定義標識符是由用戶按標識符構成規則生成的非保留字的標識符,如 abc 就是一個標識符。

提示:使用標識符時一定要注意,或者使用關鍵字,或者使用自定義的非關鍵字標識符。此外,標識符可以包含關鍵字,但不能與關鍵字重名。

例如以下合法與不合法標識符。
  • 合法標識符:date、$2011、_date、D_$date 等。
  • 不合法的標識符:123.com、2com、for、if、fruit 等。

標識符用來命名常量、變量、類和類的對象等。因此,一個良好的編程習慣要求命名標識符時,應賦予它一個有意義或有用途的名字。

關鍵字

關鍵字(或者保留字)是對編譯器有特殊意義的固定單詞,不能在程序中做其他目的使用。關鍵字具有專門的意義和用途,和自定義的標識符不同,不能當作一般的標識符來使用。例如,在 HelloJava.java 中的 class 就是一個關鍵字,它用來聲明一個類,其類名稱為 HelloJava。public 也是關鍵字,它用來表示公共類。另外,static 和 void 也是關鍵字,它們的使用將在本教程后面的章節中詳細介紹。

Java 的關鍵字對 Java 編譯器有特殊的意義,它們用來表示一種數據類型,或者表示程序的結構等。保留字是為 Java 預留的關鍵字,它們雖然現在沒有作為關鍵字,但在以后的升級版本中有可能作為關鍵字。

Java 語言目前定義了 51 個關鍵字,這些關鍵字不能作為變量名、類名和方法名來使用。以下對這些關鍵字進行了分類。
  1. 數據類型:boolean、int、long、short、byte、float、double、char、class、interface。
  2. 流程控制:if、else、do、while、for、switch、case、default、break、continue、return、try、catch、finally。
  3. 修飾符:public、protected、private、final、void、static、strict、abstract、transient、synchronized、volatile、native。
  4. 動作:package、import、throw、throws、extends、implements、this、supper、instanceof、new。
  5. 保留字:true、false、null、goto、const。

提示:由于 Java 區分大小寫,因此 public 是關鍵字,而 Public 則不是關鍵字。但是為了程序的清晰及可讀性,要盡量避免使用關鍵字的其他形式來命名。

注釋

注釋是對程序語言的說明,有助于開發者和用戶之間的交流,方便理解程序。注釋不是編程語句,因此被編譯器忽略。

在 Java 中,一行注釋以雙斜杠(//)標識;多行注釋包含在“/*”和“*/”之間;文檔注釋包含在“/**”和“*/”之間。例如給 JavaApplet.java 文件添加注釋。
import java.applet.*;    //導入java.applet包下的所有類
import java.awt.*;    //導入java.awt包下的所有類
public class JavaApplet extends Applet
{
    /**
    *Applet初始化方法
    *@see java.applet.Applet 類
    *@return 無
    */
    public void init()
    {
        setSize(300,200);    //指定大小
    }
    /**
    *Applet畫圖操作方法
    *@see java.applet.Applet
    */
    public void paint(Graphics g)
    {
        g.drawString("你好 Java 世界!",100,30);    //繪制圖像
    }
}

在 Java 中,一行注釋以雙斜杠(//)標識;多行注釋包含在“/*”和“*/”之間;文檔注釋包含在“/**”和“*/”之間。例如給 JavaApplet.java 文件添加注釋。當編譯器執行到“//”時,就會忽略該行“//”之后的所有文本;當執行到“/*”時,會掃描下一個“*/”并忽略“/*”和“*/”之間的任何文本;當執行到“/**”時,也會掃描下一個“*/”并忽略“/**”和“*/”之間的任何文本內容。

修飾符

Java 使用了一定數量的稱為修飾符的關鍵字,這些修飾符指定了數據、方法和類的屬性以及它們的使用方法。例如 public 和 static 都是修飾符,另外還有 private、final、abstract 和 protected。 一個 public 數據、方法或者類可以被其他的類訪問,而一個 private 數據或方法不能被其他類訪問。后面的章節中將會詳細講解這些修飾符的用法。

語句和塊

語句代表一個動作或一系列動作。例如 JavaApplet.java 文件的 init() 方法中,只有一條語句“SetSize(300,200);”,該語句指定了畫布的大小。

在 Java 語言中語句是以分號(;)來結尾的。 程序中的大括號形成了組織程序中的語句塊。在 Java 中,每個塊以大括號“{”開始,以大括號“}”結束。每個類都有組織該類數據和方法的類塊,每個方法也都有組織該方法內語句的方法塊。塊可以嵌套,也就是說一個塊可以放置在另一個塊內,如下面的代碼所示。
public class Hello
{
    public static void main(String[] args)
    {
        System.out.println("你好,Java 世界!");
    }
}

該段代碼中的 main() 方法塊放置在了 Hello 類的塊中。

類是 Java 的基本架構,在 Java 中編程必須理解類并學會編寫和使用類。上面已經講到過,在 Java 中,每個 Java 程序至少必須有一個類。每個類都要先聲明,然后定義該類的數據和方法。

Java 中可以定義多個類,每個 Java 程序的定義都是使用一個或多個類完成的。在上述例子中,Hello 即為類名。有關類的知識將在本教程的后面章節中做詳細講解。

方法

在 Java 中,方法同 C 語言中的函數作用相似,都可以執行一系列動作。如上例中 System.out.println("你好,Java世界!"),是執行向控制臺輸出字符串的信息。其中 System.out 是標準輸出對象,println 是該對象的一個方法,它由執行向標準輸出設備顯示信息的一系列操作語句集組成,通過調用帶有字符串參數的語句對它進行操作。

在上例子中,"你好,Java世界!"即為參數。可以用不同的參數調用同一個 println() 方法,顯示不同的信息。

main()方法

main() 方法是 Java 程序中非常重要的方法,它是程序的入口。如上例子中,在 Hello 類中定義了一個 main() 方法,其中 public 表示訪問權限,指明所有的類都可以使用這個方法;static 指明該方法是一個類方法(又稱為靜態方法),它可以通過類名直接調用;void 則指明 main() 方法不返回任何值。

對一個應用程序來說,main() 方法是必需的,而且必須按照上面的格式來定義。Java 解釋器在沒有生成任何實例的情況下,以 main() 方法作為入口來執行程序。Java 程序中可以定義多個類,每個類中可以定義多個方法,但 main() 方法作為程序的入口,只能有一個。

main() 方法定義中,小括號“()”中的“String[] args”是傳遞給 main() 方法的參數,參數名為 args,它是類 String 的一個實例。參數可以為 0 個或多個,多個參數間用括號分隔。main() 方法的實現由大括號“{}”括起來。

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo