Java類方法

類中的方法定義對象的行爲。方法是一個命名的代碼塊。調用方法的代碼是方法的調用者。
可選地,方法可以接受來自調用者的輸入值,並且它可以向調用者返回值。

輸入值的列表稱爲參數。 方法可以具有零參數。 如果一個方法有零個參數,我們說該方法沒有任何參數或方法不使用參數。

方法總是在類的主體內定義。方法聲明的一般語法是形式 -

<modifiers> <return type> <method name> (<parameters list>) <throws clause>{
    // Body of  the   method  goes  here
}
  • <modifiers> 是修飾符的可選列表;
  • <return type> 是從方法返回的值的數據類型;
  • <method name> 是方法的名稱;

方法參數

方法名稱後面是一對閉合的小括號。或者,可以在括號內爲方法指定一個或多個參數,多個參數用逗號分隔。
右括號可以後跟一個throws子句。最後,在大括號內指定代碼的實現。方法聲明中的四個部分是必需的:

  • 返回類型;
  • 方法名稱;
  • 一個小括號;
  • 一個大括號;

以下是一個方法的示例:

  • 方法的名稱是:add
  • 使用兩個 int 類型的參數: n1n2
  • 返回這兩個參數的和;
int add(int n1, int n2)  { 
   int sum = n1  + n2; 
   return  sum;
}

有時,方法不會向其調用者返回值。 如果方法不向調用者返回任何值,則使用關鍵字void作爲返回類型。

方法名稱必須是有效的Java標識符。
通常,Java方法從小寫開始,隨後使用字帽,也就是之後的單詞的第一個字母大寫。例如,getNamesetNamegetDogCountcreateDog都是有效的方法名稱。方法可以從其調用者獲取輸入值。參數用於從調用者獲取輸入值。

參數由兩部分組成:數據類型和變量名稱。 方法參數是變量聲明。變量用於保存從方法的調用者傳遞的輸入值。逗號分隔方法中的參數。

在以下示例中,add方法聲明兩個參數:n1n2。 兩個參數都是int數據類型。

int add(int n1, int n2)  { 
   int sum = n1  + n2; 
   return  sum;
}

當調用add方法時,調用者必須傳遞兩個int值。從調用者傳遞的第一個值存儲在n1中,從調用者傳遞的第二個值存儲在n2中。
參數n1n2也稱爲形式參數。

方法通過其在特定上下文中的簽名唯一地標識。 方法的簽名是其名稱及其參數的數量,類型和順序的組合。

局部變量

在方法,構造函數或方法塊中聲明的變量稱爲局部變量。在方法中聲明的局部變量僅在執行方法的持續時間內存在。因爲局部變量只存在一個臨時持續時間,所以不能在方法,構造函數或聲明它的塊之外使用。

方法的形式參數被視爲局部變量。 當調用方法時,在方法的正文執行之前,它們用實際的參數值初始化。

使用局部變量需要遵守以下規則 -

  • 默認情況下不會初始化局部變量。
  • 在程序向局部變量分配值之前,不能在程序中訪問局部變量。
  • 局部變量可以在方法體中的任何地方聲明。 但是,它必須在使用之前聲明。
  • 當類變量或實例變量和局部的名稱相同時,局部變量隱藏(覆蓋)實例變量和類變量。

以下是一個簡單的示例:

public class Main {
  public static int sum(int a , int b){
    int sum = 0; // 局部變量
    sum = a + b; 
    return sum; // 返回後,sum變量被回收銷燬
  }
  public static void main(String[] args) {
    int a = 100;
    int b = 200;
    int sum = 0;
    sum = sum(a, b);
    out.println("The sum of a and b is: " + sum);
  }
}