您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關java中重載與重寫有哪些區別的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
java中的重載與重寫的區別:1、重載發生在本類,重寫發生在父類與子類之間;2、重載的方法名必須相同,重寫的方法名相同且返回值類型必須相同;3、重載的參數列表不同,重寫的參數列表必須相同。
重載(Overloading)
重載發生在本類,方法名相同,參數列表不同,與返回值無關,只和方法名,參數列表,參數的類型有關.
重載(Overload):首先是位于一個類之中或者其子類中,具有相同的方法名,但是方法的參數不同,返回值類型可以相同也可以不同。
(1):方法名必須相同
(2):方法的參數列表一定不一樣。
(3):訪問修飾符和返回值類型可以相同也可以不同。
其實簡單而言:重載就是對于不同的情況寫不同的方法。 比如,同一個類中,寫不同的構造函數用于初始化不同的參數。
重寫(Overriding)
重寫發生在父類子類之間,比如所有類都是繼承與Object類的,Object類中本身就有equals,hashcode,toString方法等.在任意子類中定義了重名和同樣的參數列表就構成方法重寫.
重寫(override):一般都是表示子類和父類之間的關系,其主要的特征是:方法名相同,參數相同,但是具體的實現不同。
重寫的特征:
(1):方法名必須相同,返回值類型必須相同
(2):參數列表必須相同
(3):訪問權限不能比父類中被重寫的方法的訪問權限更低。例如:如果父類的一個方法被聲明為public,那么在子類中重寫該方法就不能聲明為protected。
(4):子類和父類在同一個包中,那么子類可以重寫父類所有方法,除了聲明為private和final的方法。
(5):構造方法不能被重寫,
簡單而言:就是具體的實現類對于父類的該方法實現不滿意,需要自己在寫一個滿足于自己要求的方法。
感謝各位的閱讀!關于java中重載與重寫有哪些區別就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。