首頁  >  文章  >  Java  >  java中的方法重載和覆蓋的區別

java中的方法重載和覆蓋的區別

王林
王林原創
2019-11-12 14:50:255560瀏覽

java中的方法重載和覆蓋的區別

java中的方法重載發生在同一個類別裡面兩個或多個方法的方法名稱相同但是參數不同的情況。與此相對,方法覆寫是說子類別重新定義了父類別的方法。方法覆蓋必須有相同的方法名,參數清單和傳回類型。

重載

(1)方法重載是讓類別以統一的方法處理不同型別資料的一種手段。多個同名函數同時存在,具有不同的參數個數(類型)。重載Override是一個類別中多態性的一種表現。

(2)java的方法重載,就是在類別中可以創建多個方法,他們具有相同的名字,但具有不同參數和不同的定義。在呼叫方法時透過傳遞給他們不同的參數個數和參數類型來決定具體使用那個方法,這就是多態性。

(3)重載的時候,方法名稱要一樣,但是參數型別和個數不一樣,回傳值型別可以相同也可以不同。無法以返回型別來作為重載函數的區分標準。

重寫(覆蓋)

(1)父類別與子類別的多態性,對父類別的函數進行重新定義。如果在子類別中定義某方法與其父類別有相同的名稱和參數,我們說該方法被重寫。在java中,子類別可繼承父類別的方法,則不需要重新編寫相同的方法。但有時子類別不想原封不動繼承父類別的方法,而是想做一定的修改,這就採用方法重寫。方法重寫又稱方法覆蓋。

(2)若子類別中的方法與父類別的中的某一方法具有相同的方法名稱、傳回型別和參數表,則新方法覆寫原有的方法。如需要父類別的原有方法,可以使用super關鍵字,該關鍵字引用房錢類別的父類別。

(3)子類別函數存取權限大於父類別。

推薦教學:Java教學

以上是java中的方法重載和覆蓋的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn