1. 程式人生 > >java 過載與重寫

java 過載與重寫

初學java的時候容易將兩者弄錯,對兩者的概念不是很清楚,這篇文章主要來講講兩者的區別。

方法過載(Overload)

方法過載指的是在一個類中可以建立多個方法,方法名字相同,而引數列表不同。

過載規則:

  1. 引數列表不同(引數的個數、型別或順序不同)
  2. 不能以返回值型別作為過載函式的區分標準。

方法重寫(Override)

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

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

重寫規則:

  1. 引數列表必須完全和被重寫的方法相同。
  2. 返回值型別必須相同。
  3. 訪問許可權不能比父類中被重寫方法的訪問許可權更低。(父類的一個方法為public,子類重寫該方法就不能宣告為protected)
  4. 宣告為final的方法不能被重寫
  5. 宣告為static的方法不能被重寫,但是能夠被再次宣告。

參考資料