Java 方法覆蓋


方法覆蓋

  1、什么時候考慮使用覆蓋?

    子類繼承父類之后,當繼承過來的方法無法滿足當前子類的業務需求時,

    子類有權利對這個方法進行重新編寫,有必要進行“方法的覆蓋”

    方法覆蓋又叫做:方法重寫(重新編寫),英語單詞叫做:Override、Overwrite,都可以。

      比較常見的:方法覆蓋、方法重寫、override

    回顧一下方法重載!!!!
      什么時候考慮使用方法重載overload?
      當在一個類當中,如果功能相似的話,建議將名字定義的一樣,這樣
      代碼美觀,並且方便編程。

      什么條件滿足之后能夠構成方法重載overload
        條件一:在同一個類當中
        條件二:方法名相同
        條件三:參數列表不同(個數、順序、類型)

  2、什么條件滿足的時候構成方法覆蓋?

    第一:有繼承關系的兩個類
    第二:具有相同方法名、返回值類型、形式參數列表
    第三:訪問權限不能更低。
    第四:拋出異常不能更多。

    這里還有幾個注意事項:(多態語法)
      注意1:方法覆蓋只是針對於方法,和屬性無關。
      注意2:私有方法無法覆蓋。
      注意3:構造方法不能被繼承,所以構造方法也不能被覆蓋。
      注意4:方法覆蓋只是針對於“實例方法”,“靜態方法覆蓋”沒有意義。

  3、關於Object類中toString()方法的覆蓋?
    toString()方法存在的作用就是:將java對象轉換成字符串形式。
    大多數的java類toString()方法都是需要覆蓋的。因為Object類中提供的toString()
    方法輸出的是一個java對象的內存地址。

    至於toString()方法具體怎么進行覆蓋?
    格式可以自己定義,或者聽需求的。(聽項目要求的。)

  4、方法重載和方法覆蓋有什么區別?

    方法重載發生在同一個類當中。

    方法覆蓋是發生在具有繼承關系的父子類之間。

    方法重載是一個類中,方法名相同,參數列表不同。

    方法覆蓋是具有繼承關系的父子類,並且重寫之后的方法必須和之前的方法一致:
    方法名一致、參數列表一致、返回值類型一致。

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM