過載和重寫

2022-10-08 20:21:23 字數 972 閱讀 2720

什麼是方法過載?

發生在同乙個類中,方法名必須相同,引數型別不同,引數數量不同,順序不同,發生在編譯時候。       實驗理論:在乙個類中,方法名稱相同時,編譯器會根據呼叫方法的引數數量,引數型別去逐個匹配,用來選擇對應的方法。

**示例:

package com.kuang.dao;

public class demo01

public static int max(int num1,int num2)

if(num1>num2)else

return result;

}public static double max(double num1,double num2)

if(num1>num2)else

return result;}}

方法過載的好處?

只需要記住乙個方法,就可以實現類似的功能。

什麼是方法重寫?

發生在父子類中,方法名,引數列表必須相同,返回值範圍小於等於父類,丟擲的異常範圍子類小於等於父類,訪問修飾符範圍大於等於父類; classnotfoundexception -->exception(大)

如果父類方法訪問修飾符為private則子類就不能重寫該方法。public>protected>default>private

重寫:子類的方法和父類必須一致。

方法重寫的好處?

因為你還沒有用到抽象類,所以無法理解重寫的作用。

比如,現在有乙個父類p,它有n多個子類s1,s2,s3...

在某一種情況下,你根本就不知道是哪個子類在執行,有些情況下也不必知道。但是只知道這些子類都有父類的乙個方法m(),這時候,你可以通過將乙個變數宣告為p,但是實際卻是s1。

如,p s = new s1(); s.m();這時候實際執行的是子類的方法體,而不是父類的方法體。

這也是介面的作用,也是很多時候所說的面向介面程式設計。

過載和重寫

物件導向的三大特性 繼承 封裝 多型。過載和重寫是多型的兩種表現形式。過載和重寫又有什麼區別呢?1 層次不同 重寫 發生在父類和子類之間。是子類重寫父類的方法,具有相同的方法名和方法引數。比如說,父子兩人都去吃飯 相同的方法 吃的是麵條 引數 父親飯量大,吃兩碗,兒子飯量小,就能吃一碗 實現了吃飯的...

過載和重寫

asp.net unity開發 net培訓 期待與您交流!過載 乙個類裡面有多個方法,方法名稱是相同的,返回值可以不同,引數列表的個數 型別 順序不同。區分過載方法可以通過引數列表的個數 型別 順序來決定呼叫哪個方法。過載可以子類過載父類的方法,並且可以靜態非靜態之間轉換。重寫 覆蓋 一般是指父類和...

重寫 和 過載

型構就是指方法的組成結構,具體包括方法的名稱和引數,涵蓋引數的數量 型別以及出現的順序,但是不包括方法的返回值型別,訪問許可權修飾符,以及abstract static final等修飾符。1.public void method int i,string s 4.5.public string m...