方法重寫和方法過載

2021-10-06 15:06:47 字數 442 閱讀 2736

1.區別

方法重寫是子類對父類繼承的方法需要進行進一步的擴大功能,重寫是建立在繼承關係上的。可以理解為子類覆蓋了父類的方法(函式名相同,引數列表相同,返回型別相同,訪問修飾符子類》=父類)

如果子類將父類的方法重寫了,呼叫時就是重寫的方法,那麼還想呼叫父類的方法,就需要super關鍵字,super關鍵字可以從子類訪問父類中的內容,如果要訪問被重寫過的方法,使用「super.方法名(引數列表)」的形式呼叫。(方法重寫的註解**@override**)

(同乙個類)方法過載就是兩個函式的函式名一樣,但是引數列表不一樣。呼叫時函式會根據引數不同來選擇方法。每個方法都可以有不同的返回型別,所以返回型別不足以區分是哪個方法。

方法重寫的原理在類的載入過程中物件頭中有乙個引用變數標記了當前class物件的位址,從而利用class物件在方法區中將重寫方法的位址覆蓋繼承父類方法的位址

方法重寫和方法過載

方法的重寫 也叫方法的覆寫 其就是在子類覆寫乙個與父類名字一樣且引數列表相同的方法。以及返回值與修飾符也需要遵循以下規則。方法重寫遵循規則 兩同 兩小 一大 兩同 方法名相同 引數列表相同 兩小 被覆寫的方法在子類中的返回值的引用型別的範圍比父類小或者與父類相同。返回值型別只能與父類的返回值型別一致...

方法重寫和方法過載

方法重寫 重寫方法的方法名,引數列表必須相同,返回型別可以相同也可以是原型別的子型別。重寫方法不能比原方法丟擲更多的異常。重寫方法的訪問許可權不能縮小 方法重寫只能用於子類重寫父類的方法,父類的乙個方法只能被子類重寫一次。被重寫的方法不能是final型別,因為final修飾的方法是無法重寫的 被重寫...

方法過載 和 方法重寫

什麼是方法的簽名?方法名稱 形參列表 注 返回值型別不是簽名的一部分 就是 方法的名稱 形參列表 假如兩個方法的名稱 形參列表都一樣,那我們稱是同乙個方法 1 方法的過載 overload 是一種現象 1 定義 方法名稱相同,引數的型別 順序或個數 不同 簡稱 引數列表不同 2 應用場景 通常用於建...