Java中的方法是什么?如何定義、使用方法


方法  

一、概念:  

  方法: 具有特定功能的一段代碼,這段代碼可以通過名字進行重復使用,從而達到代碼簡化的目的。

二、方法定義的步驟:

 1. 方法的聲明 ---> 向外界說明自己的名字在調用的時候需要什么數據,能夠為方法的使用者提供什么類型的數據   
        語法:
        public static 返回值類型 方法名(形式參數列表)
        
        public static java程序 張三(money a)
      
     返回值類型: 在調用方法之后,方法能夠為方法的調用者提供什么類型的數據,
      它可以為任意的數據類型(基本數據類型& 引用數據類型) 特殊的數據類型 void 表示沒有返回值

      方法名: 就是為這段代碼起的一個名字 要求: 見名知意 命名規則 小駝峰

      形式參數列表: 在調用方法的時候,要求傳入的數據類型 數據的個數

2. 方法的實現 ---> 對聲明上的功能進行具體的代碼實現 
    
        語法: 
            {
                方法的實現的代碼; 
            }
            
        {
            // 1 搭建環境 
            // 2 寫代碼
            // 3 掉幾根頭發
            ......
        }    
 
三、方法的三要素:

  (1)方法名

  (2)返回值類型

  (3)形式參數列表(形參列表可以為空,因為有時確實不需要傳入參數,根據實際情況確定是否傳入形參)


四、方法定義的位置
  方法在類中和主方法並列 。

package  com.study.demo

//位置1
public class MyClass{
    //位置2
    public static void main(String[] args) {
        //位置3
    }
    //位置4
    
}
//位置5

  方法的位置在位置2或位置4.

 

五、方法的調用

  1. 無參數方法的調用
    語法: 方法名();
  2. 有參數方法的調用
    語法: 方法名(實際參數列表);

 

六、方法的參數

形式參數: 就是方法在調用的時候,給方法的調用者進行說明.在調用的時候需要什么類型的數據. ---> 變量的聲明  
實際參數: 就是在方法調用的時候,真實為方法傳入的真實數據. ---> 就是為形式參數進行賦值  

注意: 在方法調用的時候, 要求 實際參數和形式參數 的個數 順序 類型 必須一一對應

 

七、方法返回值

  返回值: 在調用方法之后,方法能夠為方法的使用者 返回一個什么類型的數據  

   return:  返回值

  用法:
    1. 用在有返回值類型的方法中, 作用是可以將返回值返回給方法的調用者
      語法: return 返回值
    2. 可以用在返回值類為 void的方法中,作用是 直接結束這個方法,當用在main方法中效果相當於 System.exit(0);

 

八、方法的執行內存分析

   棧內存: 是jvm中的一塊內存空間,作用就是執行方法的
  棧內存的特點: 先進后出 first in last out 

  方法的執行:
    將方法的數據加載進棧內存     ---> 入棧 
    方法執行完畢,數據從棧內存銷毀     ---> 出棧

 

九、方法的嵌套調用 

  就是在一個方法中調用另一個方法。

  如果調用的是自身,那么就是遞歸。遞歸有風險 使用需謹慎。

遞歸舉例:

  利用遞歸的算法計算斐波那契數列 

import java.util.Scanner;

public class Demo01 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        //求斐波那契數列的任意一項
        System.out.println("請輸入你要求的位數是:");
        int num1 = sc.nextInt();
        if(num1 > 0){
            int reuslt = fibon(num1);
            System.out.println("斐波那契數列的第"+num1+"個數是:"+reuslt);
        }else{
            System.out.println("輸入非法,請重新輸入!");
        }
    }
    //求斐波那契數列
    public static int fibon(int n){
        if(n == 1){
            return 0;
        }else if(n == 2){
            return 1;
        }else if(n == 3){
            return 1;
        }else{
            return fibon(n-1)+fibon(n-2);
        }
    }

}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM