java面試專題之過載和重寫的區別

2021-08-28 06:59:10 字數 863 閱讀 5703

方法過載是指在乙個類中定義多個同名的方法,但要求每個方法具有不同的引數的型別或引數的個數

原則如下:

一.方法名一定要相同。

二.方法的參數列必須不同,包括引數的型別或個數,以此區分不同的方法體。

三.如果引數個數不同,就不管它的引數型別了!

四.如果引數個數相同,那麼引數的型別或者引數的順序*必須不同。

五.方法的返回型別、修飾符可以相同,也可不同。

1、也叫子類的方法覆蓋父類的方法,要求返回值、方法名和引數都相同。

2、子類丟擲的異常不能超過父類相應方法丟擲的異常。(子類異常不能超出父類異常)

3、子類方法的的訪問級別不能低於父類相應方法的訪問級別(子類訪問級別不能低於父類訪問級別)

方法過載(overloading):過載是在同乙個類中的兩個或兩個以上的方法,擁有相同的方法名,但是引數卻不相同,方法體也不相同,最常見的過載的例子就是類的建構函式,可以參考api幫助文件看看類的構造方法

方法覆蓋要求引數列表(引數簽名)必須一致,而方法過載要求引數列表必須不一致。

方法覆蓋要求返回型別必須一致,方法過載對此沒有要求。

方法覆蓋只能用於子類覆蓋父類的方法,方法過載用於同乙個類中的所有方法(包括從父類中繼承而來的方法)

方法覆蓋對方法的訪問許可權和丟擲的異常有特殊的要求,而方法過載在這方面沒有任何限制。

父類的乙個方法只能被子類覆蓋一次,而乙個方法可以在所有的類中可以被過載多次。

java之過載和重寫

方法的重寫規則 class animal public animal public animal int a class dogextends animal public dog override public 若將public去掉變成defualt修飾的變數,則編譯報錯!void move thr...

Java過載和重寫

過載,overload 這邊我喜歡把載讀作z i,即 裝 方法z i著引數,過載就是重新裝上不同的引數 相同名稱的方法,重灌他的引數列表,返回值也可以不同,具體選擇使用哪個函式,取決於它的引數型別,所以引數型別必須不同,否則就不是重灌了,而是同裝了 重寫,override 重寫是子類與父類的方法中存...

Java 重寫和過載

過載 如果乙個類中包含了兩個或兩個以上看同名函式的引數列表,但形參列表不同,則被稱為方法過載。原則 兩同一不同 即同乙個類中方法名相同,引數列表不同。與返回值型別 修飾符等無關。public class overload 過載test方法 public void test string s publ...