04.方法

1.方法的作用:減少重復性代碼,實現(xiàn)代碼復用;方便后期維護

2.方法:具有特定功能一段獨立代碼

3.聲明方法:

3.1:語法:
訪問修飾符 擴展修飾符【static/final/abstract】 返回值類型 方法名(
數(shù)據(jù)類型1 參數(shù)1,數(shù)據(jù)類型2 參數(shù)2... ){
代碼塊;
【return 結果;】
}

3.2: 訪問修飾符:public,protected,default,private ,表示方法訪問權限,現(xiàn)在常用public作 方法的訪問修飾符。
3.3:返回值類型:方法執(zhí)行完后返回的結果的類型叫返回值類型,常用的方法返回值類型有 void,Java支持所有數(shù)據(jù)類型。如果方法執(zhí)行完后不想返回任意結果就用 void,如果方法執(zhí)行完后想返回結果,返回值類型就是這個結果的數(shù)據(jù)類 型,同時一定要用return返回結果。
3.4:方法名:自定義,采用駝峰式命名法。
3.5:方法參數(shù):執(zhí)行方法時所需要原材料。參數(shù)名與變量名命名規(guī)則一致,一個方法的參數(shù)可 以有0個到多個,參數(shù)前一定要有數(shù)據(jù)類型。參數(shù)在方法中當作已知變量來用。
3.6:return 結果:方法執(zhí)行完后要返回的結果。方法的返回結果可以任意類型,只能返回一 個值。只要方法的返回值類型不為void,方法中一定要用return 結果,且結 果的類型與返回值類型一致。
3.7:聲明方法只表示有這種功能,方法不調用不執(zhí)行。
3.8:方法與方法之間是一種并列的關系,不能嵌套。
3.9: 一個方法只要聲明一次,就可以多次調用。
3.10:在同一個類中不能有相同方法。
3.11:方法的類型:

eg:/**
  * 聲明刷屏的方法,是一個無參無返回值的方法
  */
  public static void flushScreem(){
      System.out.println("刷屏了");
  }
  /**
  *聲明自我介紹的方法,是一個有參無返回值的方法
  */
  public static void showMyself(String name,int age){
      System.out.println("大家好,我叫"+name+",今年"+age);
  }
  /**
  *聲明榨汁的方法,是一個有參有返回值的方法
  */
  public static String juicing(String fruit){
      return "榨出一杯"+fruit+"汁";
  }
  /**
  * 聲明提示發(fā)紅包的方法,無參有返回值的方法
  */
  public static String money(){
      return "遲到要發(fā)紅包";
  }

4.調用方法:方法名(參數(shù)1,參數(shù)2...);

eg://調用無參無返回值的方法
  flushScreem();
  //調用有參無返回值的方法
  showMyself("小明",18);
  //調用有參有返回值的方法,將方法的返回結果存在變量中
  String result=juicing("西瓜");
  System.out.println(result);
  //調用無參有返回值的方法,將方法的返回結果存在變量中
  String result2=money();
  System.out.println(result2);

5.參數(shù)類型

形參:方法聲明時小括號中參數(shù)。形參前一定要帶數(shù)據(jù)類型。
實參:方法調用時小括號中參數(shù)。方法調用時實參直接給值,一定不能寫數(shù)據(jù)類型。
對同一個方法,形參與實參的個數(shù)要一致,類型要匹配,位置要一一對應。

6.方法重載的作用:解決同一個類,功能相同,多個方法的命名和調用

7.方法重載的條件

7.1:在同一個類中(一般情況都是,特殊情況子類繼承父類的方法,再寫一個構成重載);
7.2:方法名相同;
7.3:參數(shù)列不同(參數(shù)的個數(shù)不同,數(shù)據(jù)類型不同)
7.4: 返回值類型一致

8.方法重載調用,用實參數(shù)列表來判斷調用了哪個方法

eg:/**
*方法重載使用
*/
public class MethedTest2{
/**
*程序的入口方法
*/
public static void main(String[] args){
  //調用方法,并將方法的返回結果存在變量中
  double result=sum(1,2,7,11);
  System.out.println("和為:"+result);
}
/**
*計算兩個數(shù)之和的方法
*/
public static double sum(double num1,double num2){
  System.out.println("計算兩個數(shù)之和的方法");
  double sum=num1+num2;
  return sum;
}
/**
*計算三個數(shù)之和的方法
*/
public static double sum(double num1,double num2,double num3){
  System.out.println("計算三個數(shù)之和的方法");
  double sum=num1+num2+num3;
  return sum;
}
/**
*計算四個數(shù)之和的方法
*/
public static double sum(double num1,double num2,double num3,double num4){
  System.out.println("計算四個數(shù)之和的方法");
  double sum=num1+num2+num3+num4;
  return sum;
}
}

練習:聲明兩個打印直角三角形的方法,第一個方法打印高度為5的直角三角形,圖形的符號作為參數(shù);第二個方法打印直角三角形,高度和符號都作為參數(shù),用方法重載去實現(xiàn)。

9.遞歸:方法自身調用自身

遞歸使用條件:
1:可以將原問題拆分為若干子問題,子問題的解決方法與原問題一樣。
2:原問題的解決依賴所有子問題的解決。
3:遞歸一定要有出口

簡單的問題能用遞歸解決,也可以循環(huán)結構解決。
一般復雜的問題能用遞歸解決,不一定能循環(huán)結構解決

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容