java中的重寫與過載

2021-08-31 13:35:33 字數 789 閱讀 9301

重寫是子類對父類的允許訪問的方法的實現過程進行重新編寫, 返回值和形參都不能改變。即外殼不變,核心重寫!

重寫的好處在於子類可以根據需要,定義特定於自己的行為。 也就是說子類能夠根據需要實現父類的方法。

重寫方法不能拋出新的檢查異常或者比被重寫方法申明更加寬泛的異常。例如: 父類的乙個方法申明了乙個檢查異常 ioexception,但是在重寫這個方法的時候不能丟擲 exception 異常,因為 exception 是 ioexception 的父類,只能丟擲 ioexception 的子類異常。

在物件導向原則裡,重寫意味著可以重寫任何現有方法。

當需要在子類中呼叫父類的被重寫方法時,要使用super關鍵字。

過載(overloading) 是在乙個類裡面,方法名字相同,而引數不同。返回型別可以相同也可以不同。

每個過載的方法(或者建構函式)都必須有乙個獨一無二的引數型別列表。

最常用的地方就是構造器的過載。

過載規則:

方法重寫是在子類存在方法與父類的方法的名字相同,而且引數的個數與型別一樣,返回值也一樣的方法,就稱為重寫(overriding)。

方法過載是乙個類中定義了多個方法名相同,而他們的引數的數量不同或數量相同而型別和次序不同,則稱為方法的過載(overloading)。

方法過載是乙個類的多型性表現,而方法重寫是子類與父類的一種多型性表現。

如下圖:

java中的重寫與過載

重寫是指子類對父類方法的實現過程進行重新編寫,返回值和形參都不能改變。重寫的好處在於子類可以根據需要,定義特定於自己的行為。public class animal public class dog extends animal public class testdog 編譯並執行,結果如下 move...

java 過載與重寫

方法過載 同乙個類裡面有多個同名的方法,這些方法除了名字相同,其他地方都可以不相同。例如 class just protected int try1 int i 方法重寫 子類中有乙個方法與父類中的某乙個方法名相同,除了方法體不同,其他地方都是相同的例如 class parent class chi...

java 過載與重寫

先來看下方法過載 overloading 的定義 如果有兩個方法的方法名相同,但引數不一致,哪麼可以說乙個方法是另乙個方法的過載。過載overloading是乙個類中多型性的一種表現。具體說明如下 例項 通過過載 mainclass 類的 printarray 方法輸出不同型別 整型,雙精度及字元型...