當我們研究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語言中,介面可以定義為對象之間如何相互通信的契約。 在涉及繼承的概念時,介面起著至關重要的作用。
介面定義一些方法,在派生類(子類)應該使用這些方法。 但是這些方法的實現完全取決於子類。