Java中的方法

1.什么是方法伴逸?

Java方法是語(yǔ)句的集合奸绷,它們?cè)谝黄饒?zhí)行一個(gè)功能。
方法是解決一類(lèi)問(wèn)題的步驟的有序集合
方法包含于類(lèi)或?qū)ο笾?br> 方法在程序中被創(chuàng)建陪踩,在其他地方被引用

設(shè)計(jì)方法的原則:方法的本意是功能塊咐低,就是實(shí)現(xiàn)某個(gè)功能語(yǔ)句塊的集合揽思,我們?cè)O(shè)計(jì)方法的時(shí)候,最好保持方法的原子性(就是一個(gè)方法只完成1個(gè)功能见擦,這樣利于我們后期的擴(kuò)展)

2.方法的定義
Java的方法類(lèi)似于其他語(yǔ)言的函數(shù)钉汗,是一段用來(lái)完成特定功能的代碼片段,一般情況下鲤屡,定義一個(gè)方法包含以下語(yǔ)法:

方法包含一個(gè)方法頭和一個(gè)方法體儡湾,下面是一個(gè)方法的所有部分:
a.修飾符:修飾符,這是可選的执俩,告訴編譯器如何調(diào)用該方法徐钠。定義了該方法的訪問(wèn)類(lèi)型(如:public修飾符,static修飾符役首,final修飾符等)

b.返回值類(lèi)型:方法可能會(huì)返回值尝丐。returnValueType是方法返回值的數(shù)據(jù)類(lèi)型显拜。有些方法執(zhí)行所需的操作,但沒(méi)有返回值爹袁。在這種情況下远荠,returnValueType是關(guān)鍵字void。

c.方法名:是方法的實(shí)際名稱(chēng)失息。方法名和參數(shù)表共同構(gòu)成方法簽名譬淳。

d.參數(shù)類(lèi)型:參數(shù)像是一個(gè)占位符。當(dāng)方法被調(diào)用時(shí)盹兢,傳遞值給參數(shù)邻梆。這個(gè)值被稱(chēng)為實(shí)參或變量。參數(shù)列表是指方法的參數(shù)類(lèi)型绎秒、順序和參數(shù)的個(gè)數(shù)參數(shù)是可選的浦妄,方法可以不包含任何參數(shù)。
(形式參數(shù):在方法被調(diào)用時(shí)用于接受外界輸入的數(shù)據(jù)见芹。)
(實(shí)際參數(shù):調(diào)用方法時(shí)實(shí)際傳給方法的數(shù)據(jù)剂娄。)

方法體:方法體包含具體的語(yǔ)句,定義該方法的功能玄呛。

例:
public class Demo {

//main方法
public static void main(String[] args) {
    //實(shí)際參數(shù)
    int sum = add(1,2);
    System.out.println(sum);
}

//加法
//形式參數(shù)阅懦,用來(lái)定義作用的
public static int add(int a,int b){
    return a+b;

}

}
/*
方法的一般格式:
修飾符 返回值類(lèi)型 方法名(參數(shù)類(lèi)型 參數(shù)名){
****···
****方法體
****···
****return 返回值;
}
*/

例:
public class Demo {

public static void main(String[] args) {
    int max = max(10,10);
    System.out.println(max);
}
//比大小
public static int max(int num1,int num2){
    int result = 0;
    if (num1==num2){
        System.out.println("num1==num2");
        return 0;//終止方法
    }
    if (num1>num2){
        result = num1;
    }else {
        result = num2;
    }
    return result;
}

}

3.方法的重載

重載就是在一個(gè)類(lèi)中徘铝,有相同的函數(shù)名稱(chēng)耳胎,但形參不同的函數(shù)。

方法重載的規(guī)則:
方法名稱(chēng)必須相同庭砍。
參數(shù)列表必須不同(個(gè)數(shù)不同、或類(lèi)型不同混埠、參數(shù)排列順序不同等)怠缸。
方法的返回類(lèi)型可以相同也可以不同。
僅僅返回類(lèi)型不同不足以成為方法的重載钳宪。

實(shí)現(xiàn)理論:
方法名稱(chēng)相同時(shí)揭北,編譯器會(huì)根據(jù)調(diào)用方法的參數(shù)個(gè)數(shù),參數(shù)類(lèi)型等去逐個(gè)匹配吏颖,以選擇對(duì)應(yīng)的方法搔体,如果匹配失敗,則編譯器報(bào)錯(cuò)半醉。

例:
public class Demo02 {

public static void main(String[] args) {
    int max = max(10,20);
    System.out.println(max);
}

//比大小
public static double max(double num1,double num2){

    double result = 0;

    if (num1==num2){
        System.out.println("num1==num2");
        return 0;//終止方法
    }
    if (num1>num2){
        result = num1;
    }else {
        result = num2;
    }

    return result;
}
//比大小
public static int max(int num1,int num2){

    int result = 0;

    if (num1==num2){
        System.out.println("num1==num2");
        return 0;//終止方法
    }
    if (num1>num2){
        result = num1;
    }else {
        result = num2;
    }
    return result;
}

}

若上述max變?yōu)閐ouble類(lèi)型疚俱,傳遞的值為int類(lèi)型(double max = (10,20)),依舊是調(diào)用int max方法缩多,計(jì)算出結(jié)果后進(jìn)行強(qiáng)制轉(zhuǎn)換變成double類(lèi)型的值呆奕。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末养晋,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子梁钾,更是在濱河造成了極大的恐慌绳泉,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,692評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件姆泻,死亡現(xiàn)場(chǎng)離奇詭異零酪,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)拇勃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,482評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)四苇,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人潜秋,你說(shuō)我怎么就攤上這事蛔琅。” “怎么了峻呛?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,995評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵罗售,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我钩述,道長(zhǎng)寨躁,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,223評(píng)論 1 292
  • 正文 為了忘掉前任牙勘,我火速辦了婚禮职恳,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘方面。我一直安慰自己放钦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,245評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布恭金。 她就那樣靜靜地躺著操禀,像睡著了一般。 火紅的嫁衣襯著肌膚如雪横腿。 梳的紋絲不亂的頭發(fā)上颓屑,一...
    開(kāi)封第一講書(shū)人閱讀 51,208評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音耿焊,去河邊找鬼揪惦。 笑死,一個(gè)胖子當(dāng)著我的面吹牛罗侯,可吹牛的內(nèi)容都是我干的器腋。 我是一名探鬼主播,決...
    沈念sama閱讀 40,091評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼蒂培!你這毒婦竟也來(lái)了再愈?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,929評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤护戳,失蹤者是張志新(化名)和其女友劉穎翎冲,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體媳荒,經(jīng)...
    沈念sama閱讀 45,346評(píng)論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡抗悍,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,570評(píng)論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了钳枕。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片缴渊。...
    茶點(diǎn)故事閱讀 39,739評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖鱼炒,靈堂內(nèi)的尸體忽然破棺而出衔沼,到底是詐尸還是另有隱情,我是刑警寧澤昔瞧,帶...
    沈念sama閱讀 35,437評(píng)論 5 344
  • 正文 年R本政府宣布指蚁,位于F島的核電站,受9級(jí)特大地震影響自晰,放射性物質(zhì)發(fā)生泄漏凝化。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,037評(píng)論 3 326
  • 文/蒙蒙 一酬荞、第九天 我趴在偏房一處隱蔽的房頂上張望搓劫。 院中可真熱鬧,春花似錦混巧、人聲如沸枪向。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,677評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)秘蛔。三九已至,卻和暖如春凿傅,著一層夾襖步出監(jiān)牢的瞬間缠犀,已是汗流浹背数苫。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,833評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工聪舒, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人虐急。 一個(gè)月前我還...
    沈念sama閱讀 47,760評(píng)論 2 369
  • 正文 我出身青樓箱残,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子被辑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,647評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 所謂方法燎悍,就是用來(lái)解決一類(lèi)問(wèn)題的代碼的有序組合,是一個(gè)功能模塊盼理。語(yǔ)法 1.訪問(wèn)修飾符:方法允許被訪問(wèn)的權(quán)限范圍谈山,可...
    Ming_0612閱讀 325評(píng)論 0 0
  • 方法概述 所謂方法,就是用來(lái)解決一類(lèi)問(wèn)題的代碼的有序組合宏怔,是一個(gè)功能模塊作用:封裝重復(fù)邏輯奏路,邏輯更清晰語(yǔ)法格式: ...
    若兮緣閱讀 361評(píng)論 0 9
  • 如何定義 Java 中的方法 所謂方法,就是用來(lái)解決一類(lèi)問(wèn)題的代碼的有序組合臊诊,是一個(gè)功能模塊鸽粉。 一般情況下,定義一...
    SuperJFL閱讀 209評(píng)論 0 0
  • 所謂方法抓艳,就是用來(lái)解決一類(lèi)問(wèn)題的代碼的有序組合触机,是一個(gè)功能模塊。 1.一般情況下玷或,定義一個(gè)方法的語(yǔ)法是: 2.分析...
    glory_前端閱讀 142評(píng)論 0 0
  • 如何定義 Java 中的方法 所謂方法儡首,就是用來(lái)解決一類(lèi)問(wèn)題的代碼的有序組合,是一個(gè)功能模塊庐椒。 一般情況下椒舵,定義一...
    冉冉升起的小太陽(yáng)閱讀 496評(píng)論 0 0