當我們研究Java程式時,它一種定義為通過調用彼此的方法進行通信的對象集合。 下麵簡要地看一下:類,對象,方法和實例變數的含義。
- 類 - 類是用於描述其類型對象支持的行為/狀態的範本/藍圖。
- 對象 - 對象具有狀態和行為。 示例:狗有狀態 - 顏色,名稱,品種以及例如:搖尾巴,吠叫,吃東西等行為。對象是類的實例。
- 方法 - 方法是一種行為,一個類可以包含許多方法。它用於寫入邏輯,操縱數據並執行所有操作。
- 實例變數 - 每個對象都有其唯一的實例變數集。 對象的狀態由分配給這些實例變數的值來創建。
1. 第一個Java程式
下麵來看一個簡單列印字串:Hello World的Java代碼。
public class HelloWorld {
   /* 這是第一個Java程式
    * 此程式執行後將列印輸出:'Hello World'
    */
   public static void main(String []args) {
      System.out.println("Hello World - from xuhuhu.com"); // 列印輸出 Hello World
   }
}
下麵來看看如何保存檔,編譯和運行程式。請按照後續步驟 -
- 打開記事本並添加上面的代碼。
- 將檔另存為:HelloWorld.java ,假設存到目錄:D:/worksp/java。 
- 打開命令提示符窗口並轉到保存該類檔(HelloWorld.java)的目錄。
- 輸入javac HelloWorld.java並按Enter鍵編譯代碼。如果代碼中沒有錯誤,命令提示符將進入到下一行。
- 接下來,輸入java HelloWorld來運行上面程式。
- 最後應該能在窗口上看到輸出:Hello World - from xuhuhu.com。
執行過程如下圖所示:
2. 基本語法
關於Java程式,請務必牢記以下幾點。
- 區分大小寫 -  Java區分大小寫,因此識別字Hello和hello在Java中具有不同的含義。
- 類名 - 對於所有類名,第一個字母應為大寫。 如果使用多個單詞來形成類的名稱,則每個內部單詞的第一個字母應為大寫。
 示例:class MyFirstJavaClass
- 方法名稱 - 所有方法名稱都應以小寫字母開頭。如果使用多個單詞來形成方法的名稱,那麼每個內部單詞的第一個字母應該是大寫字母。
 示例:public void myMethodName()
- 程式檔案名 - 程式檔的名稱應與類名完全匹配。保存檔時,應使用類名保存它(記住Java區分大小寫)並在名稱的末尾使用擴展名稱:.java(如果檔案名和類名不匹配,則程式將無法編譯))。但請注意,如果代碼檔中沒有public class,則檔案名可能與類名不同。在代碼檔中也沒有強制要求必須有public class。
 示例:假設MyFirstJavaProgram是類名,那麼該檔應保存為:MyFirstJavaProgram.java。
- public static void main(String args[])− Java程式處理從- main()方法開始,該方法是每個Java程式的必需部分。
3. Java識別字
所有Java組件都需要名稱。 用於類,變數和方法的名稱稱為識別字。
在Java中,識別字的命名有幾點要記住。 它們如下 - 
- 所有識別字都應以字母(A到Z或a到z),貨幣字元($)或下劃線(_)開頭。
- 在第一個字元之後,識別字可以是任何字元組合。
- 關鍵字不能用作識別字。
- 識別字區分大小寫。
- 合法識別字的示例:age,$salary,_value,__1_value。
- 非法識別字的示例:123abc,-salary。
4. Java修飾符
與其他語言一樣,可以通過使用修飾符來修改類,方法等。 修飾符分為兩類 -
- 訪問修飾符 - default,public,protected,private;
- 非訪問修飾符 -  final,abstract,strictfp;
在下一節中學習有關修飾符的更多細節。
5. Java變數
以下是Java中的變數類型 -
- 局部變數
- 類變數(靜態變數)
- 實例變數(非靜態變數)
6. Java數組
數組是存儲多個相同類型變數的對象。 但是,數組本身是堆上的對象。在接下來的章節中將學習如何聲明,構造和初始化數組。
7. Java枚舉
枚舉是在Java 5.0中引入的。 枚舉將變數限制為僅具有少數預定義值之一。此枚舉列表中的值稱為枚舉。
通過使用枚舉,可以減少代碼中的錯誤數量。
例如,在新鮮果汁店中,可將玻璃杯大小限制為:小杯,中杯和大杯。 這將確保它不允許購買除了小杯,中杯或大杯之外的玻璃杯。
示例代碼:
class FreshJuice {
    // 定義枚舉
    enum FreshJuiceSize{ SMALL, MEDIUM, LARGE }
    FreshJuiceSize size;
}
public class FreshJuiceTest {
   public static void main(String args[]) {
      FreshJuice juice = new FreshJuice();
      juice.size = FreshJuice.FreshJuiceSize.MEDIUM ;
      System.out.println("玻璃杯大小: " + juice.size);
   }
}
編譯並執行上面示例代碼,得到以下結果:
玻璃杯大小: MEDIUM
注 - 枚舉可以單獨聲明或在類中聲明。 方法,變數,構造函數也可以在枚舉內定義。
8. Java關鍵字
以下列表中列出了Java中的保留字(關鍵字)。這些保留字不能用作常量或變數或任何其他識別字名稱。
| abstract | assert | boolean | break | 
|---|---|---|---|
| byte | case | catch | char | 
| class | const | continue | default | 
| do | double | else | enum | 
| extends | final | finally | float | 
| for | goto | if | implements | 
| import | instanceof | int | interface | 
| long | native | new | package | 
| private | protected | public | return | 
| short | static | strictfp | super | 
| switch | synchronized | this | throw | 
| throws | transient | try | void | 
| volatile | while | 
9. 注釋
Java支持與C和C++非常相似的單行和多行注釋。Java編譯器會忽略任何注釋中可用的所有字元。
示例代碼:
public class MyFirstJavaProgram {
   /* This is my first java program.
    * This will print 'Hello World' as the output
    * This is an example of multi-line comments.
    */
   public static void main(String []args) {
      // 這是單行注釋
      /* 這也是一個單行注釋 */
      /* 這是一個
       多行的
       注釋
       */
      System.out.println("Hello World");
   }
}
10. 繼承
在Java中,類可以從類派生(繼承)。 如果需要創建一個新類,並且已經有一個包含需要的代碼的類,那麼可以直接從這個現有代碼派生一個新類。
此概念可重用現有類的字段和方法,而無需在新類中重寫代碼。 在這種情況下,現有類稱為超類,派生類稱為子類。
11. 介面
在Java語言中,介面可以定義為對象之間如何相互通信的契約。 在涉及繼承的概念時,介面起著至關重要的作用。
介面定義一些方法,在派生類(子類)應該使用這些方法。 但是這些方法的實現完全取決於子類。
