Java學(xué)習(xí) Day5

1.方法的優(yōu)勢:實(shí)現(xiàn)代碼復(fù)用,減少了代碼重復(fù)。方便后期的維護(hù)。

2.方法:具備特定功能的一段獨(dú)立的代碼段。一個方法對應(yīng)一個功能。

方法聲明的語法:

訪問修飾符 [static/final/abstract]? 返回值類型 方法名(參數(shù)類型 參數(shù)名1,參數(shù)類型 參數(shù)名2……){

方法體

return 返回值;//作用返回方法執(zhí)行后的結(jié)果,結(jié)束方法

? }

方法調(diào)用的語法:方法名(參數(shù)名1,參數(shù)名2……);

訪問修飾符:public,private,(default),protected.

返回值類型: void+java支持的數(shù)據(jù)類型

方法名:駱駝式命名法

方法聲明時的參數(shù)(可以是0個到多個):在方法聲明時,這個地方的參數(shù)叫形參。形參的參數(shù)名前一定寫數(shù)據(jù)類型。

方法調(diào)用時的參數(shù):叫實(shí)參。實(shí)參不需要寫數(shù)據(jù),只需要傳值。實(shí)參傳遞的參數(shù)實(shí)際上是傳給形參。

return 返回值:方法的返回值類型是什么,咱們返回值就只能是這種類型。如果方法返回值類型為void時,就無須用return 返回值。

注:(1)方法不調(diào)用不執(zhí)行,調(diào)用才執(zhí)行。

(2)形參與實(shí)參的參數(shù)個數(shù)相同,形參與實(shí)參的參數(shù)對應(yīng)類型要相同,參數(shù)的位置也要匹配。

(3)如果方法有返回值,誰調(diào)用這個方法,返回值就返回給誰;

有返回值的方法在調(diào)用時,如果要用到返回值就要定一個變量接收方法的返回結(jié)果;

如果不用返回結(jié)果,在方法調(diào)用時就不需要接收返回結(jié)果。

(4)如果一個方法執(zhí)行時,需要調(diào)用才提供數(shù)據(jù)才能完成功能,就可以用有參方法;

如果一個方法執(zhí)行完,需要方法返回結(jié)果,就定成有返回值 。

(5)方法與方法是平級關(guān)系,不能嵌套定義。

? (6)方法間可以相互調(diào)用。

eg:

/**

*? 聲明一個無參無返回值的方法

*/

public static void shuaPin(){

System.out.println("刷屏");

}

/**

*? 聲明一個有參無返回值的方法

*/

public static void add(int a,int b){

int result=a+b;

System.out.println(result);

}

/**

* 聲明一個有參方法,有返回值

*/

public static int chen(int num1,int num2){

int result=num1*num2;

return result;

}

3.方法重載:(1)在同一個類 (2)方法名相同 (3)參數(shù)列表不同(參數(shù)的個數(shù)不同和類型不同)

使用場景:在同一個類,如果執(zhí)行相同的功能,只是參數(shù)不一樣,可以用方法重載。

方法重載與方法的訪問修飾符和返回值類型無關(guān)。

在調(diào)用時,虛擬機(jī)通過參數(shù)列表的不同來區(qū)分同名方法。

eg:public static int add(int num1,int num2){

System.out.println("兩個數(shù)的和");

int result=num1+num2;

return result;

}

public static int add(int num1,int num2,int num3){

System.out.println("三個數(shù)的和");

int result=num1+num2+num3;

return result;

}

4.遞歸:方法自身調(diào)用自身。

適用場景:(1)把一個問題拆分成多個子問題。

? (2)子問題的解決方式與問題本身的解決方式一樣

? (3)最終問題的解決依賴每個子問題的解決

? (4)最終問題一定要有出口。

eg:計(jì)算一個正整數(shù)num的階乘

public static long diGui(int num){//5

if(num==1){

return 1;

}else{

return num*diGui(num-1);//5*diGui(4)->5*4*diGui(3)->5*4*3*diGui(2)->5*4*3*2*1

}

}

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

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容