方法包含一個方法頭和一個方法體。下面是一個方法的所有部分:
修飾符:修飾符,這是可選的,告訴編譯器如何調用該方法。定義了該方法的訪問類型。
返回值類型 :方法可能會返回值。returnValueType是方法返回值的數據類型。有些方法執行所需的操作,但沒有返回值。在這種情況下,returnValueType是關鍵字void。
方法名:是方法的實際名稱。方法名和參數表共同構成方法簽名。
參數類型:參數像是一個占位符。當方法被調用時,傳遞值給參數。這個值被稱為實參或變量。參數列表是指方法的參數類型、順序和參數的個數。參數是可選的,方法可以不包含任何參數。
方法體:方法體包含具體的語句,定義該方法的功能。
如:
1
|
public static int age( int birthday){...} |
參數可以有多個:
1
|
static float interest( float principal, int year){...} |
注意: 在一些其它語言中方法指過程和函數。一個返回非void類型返回值的方法稱為函數;一個返回void類型返回值的方法叫做過程。
實例
下面的方法包含2個參數num1和num2,它返回這兩個參數的最大值。
1
2
3
4
5
6
7
8
9
10
|
/** 返回兩個整型變量數據的較大值 */ public static int max( int num1, int num2) { int result; if (num1 > num2) result = num1; else result = num2; return result; } |
在Java中,方法的定義方式類似于其他語言,尤其與C和C++很類似。定義的一般格式如下:
1
|
<修飾符><返回類型><名字>(<參數列表>)<塊> |
其中,<名字>是方法名,它必須使用合法的標識符。
<返回類型>說明方法返回值的類型。如果方法不返回任何值,它應該聲明為void。
Java對待返回值的要求很嚴格,方法返回值必須與所說明的類型相匹配。如果方法說明有返回值,比如說是int,那么方法從任何一個語句分支中返回時都必須返回一個整數值。
<修飾符>段可以含幾個不同的修飾符,其中限定訪問權限的修飾符包括public,protected和private。public訪問修飾符表示該方法可以被任何其他代碼調用,而priVate表示方法只能被類中的其他方法調用。
<參數列表>是傳送給方法的參數表。表中各元素間以逗號分隔,每個元素由一個類型和一個標識符組成。
<塊>表示方法體,是要實際執行的代碼段。
在例中,為Customer·類定義了方法setName()和setAddress()。
例:
1
2
3
4
5
6
|
void setName(String name){ this .name=name; } String getAddress()} return address; } |
下面在Date類中增加dayslnMonth()和printDate()方法,以便完善Date類。