重寫與過載

2021-07-12 06:04:57 字數 586 閱讀 2142

重寫方法的規則:

1.引數列表必須完全與被重寫的方法的相同,否則不能稱其為重寫而是過載.

2.返回的型別必須一直與被重寫的方法的返回型別相同,否則不能稱其為重寫而是過載.

3.訪問修飾符的限制一定要大於被重寫方法的訪問修飾符(public>protected>default>private)

4.重寫方法一定不能拋出新的檢查異常或者比被重寫方法申明更加寬泛的檢查型異常.例如,

父類的乙個方法申明了乙個檢查異常ioexception,在重寫這個方法是就不能丟擲exception,只能丟擲ioexception的子類異常,可以丟擲非檢查異常.

而過載的規則:

1.必須具有不同的引數列表;

2.可以有不同的返回型別,只要引數列表不同就可以了;

3.可以有不同的訪問修飾符;

4.可以丟擲不同的異常;

重寫和過載的區別在於:

重寫多型性起作用,對呼叫被過載過的方法可以大大減少**的輸入量,同乙個方法名只要往裡面傳遞不同的引數就可以擁有不同的功能或返回值.

用好重寫和過載可以設計乙個結構清晰而簡潔的類,可以說重寫和過載在編寫**過程中的作用非同一般

重寫與過載

override 為覆蓋又叫重寫,從字面就可以知道,它是覆蓋了乙個方法並且對其重寫,以求達到不同的作用。對我們來說最熟悉的覆蓋就是對介面方法的實現,在介面中一般只是對方法進行了宣告,而我們在實現時,就需要實現介面宣告的所有方法。除了這個典型的用法以外,我們在繼承中也可能會在子類覆蓋父類中的方法。在覆...

過載與重寫

過載與重寫 面對過載與重寫有時會像失憶一樣,將這兩個內容搞混。在實際運用中,我們一般是不會混的。但在給別人講述的過程中,可能會出現張冠李戴將兩個名詞搞混,這是不利於傳播的。讓我們來一起加深一下 過載 相同函式名稱,不同引數或不同引數型別。舉個例子 class oneclass public doub...

重寫與過載

重寫方法的規則 1 引數列表必須完全與被重寫的方法相同,否則不能稱其為重寫。2 返回的型別必須一直與被重寫的方法的返回型別相同,否則不能稱其為重寫。3 訪問修飾符的限制一定要大於被重寫方法的訪問修飾符 public protected default private 4 重寫方法一定不能拋出新的檢查...