1. 程式人生 > 其它 >Java---方法和過載

Java---方法和過載

技術標籤:Java

1.什麼是方法?

方法分為定義呼叫兩個不同階段。使用又被稱為執行、呼叫。

  • 方法是解決一類問題的步驟的有序組合
  • 方法包含於類或物件中
  • 方法在程式中被建立,在其他地方被引用

2.使用方法的好處

  1. 將重複程式碼抽取成方法,方便多次呼叫
  2. 一個方法專注完成一件事

3.方法的命名規則

方法的名字的第一個單詞應以小寫字母作為開頭,後面的單詞則用大寫字母開頭寫,不使用連線符。例如:addPerson

4.方法的定義(define)

標準格式如下:

public static 方法返回型別 方法名稱(形參列表) {
    ...
    方法體
    ...
    return 返回值;
}

5.方法的呼叫

方法的使用中,有以下幾個重要的元素:

  1. 呼叫哪個方法。方法名稱。
  2. 使用哪些具體的值,進行本次方法呼叫。
  3. 呼叫方法後可能得到的返回值的後續處理,儲存或直接再次使用。

方法的呼叫過程:

一旦遇到方法呼叫的程式碼,就會跳轉掉方法內部執行(同時會把實參的值賦給形參),順序執行方法內部的程式碼,方法內部遇到return或者方法執行完畢的時候,程式碼就會回到呼叫位置繼續執行。

注:

方法內部的程式碼一定是呼叫了才會執行,如果沒有方法呼叫,方法內部的程式碼就不會被執行。

標準格式如下:

//不關心返回值
方法名稱(實參列表)

//將返回值儲存到變數中
變數 = 方法名稱(實參列表)

//直接使用返回值參與運算
方法名稱(實參列表) + 方法名稱(實參列表)

示例

public class TestMax {
   /** 主方法 */
   public static void main(String[] args) {
      int i = 5;
      int j = 2;
      int k = max(i, j);
      System.out.println( i + " 和 " + j + " 比較,最大值是:" + k);
   }
 
   /** 返回兩個整數變數較大的值 */
   public static int max(int num1, int num2) {
      int result;
      if (num1 > num2)
         result = num1;
      else
         result = num2;
 
      return result; 
   }
}

6.方法過載

同一個方法名字,提供不同版本的實現,稱為方法過載

示例:

public class Test {
    public static void main(String[] args) {
        System.out.println(max(10,20));
        System.out.println(max(10.2,12.4));
        System.out.println(max(10.5,3.2,4));
    }

    public static int max(int num1, int num2) {
        int max = num1 > num2 ? num1 : num2;
        return max;
    }

    public static double max(double num1, double num2) {
        double max = num1 > num2 ? num1 : num2;
        return max;
    }

    public static double max(double num1, double num2, int num3) {
        double max = max(max(num1,num2),num3);
        return max;
    }
}

7.過載的規則

針對同一個類:

  • 方法名相同
  • 方法的引數相同(引數個數或引數型別)
  • 方法的返回值型別不同不構成過載
  • 構成過載的兩個方法,得是在同一個作用域中