古詩詞大全網 - 個性簽名 - Java中,方法重載和方法重寫各有什麽要求,有什麽區別?

Java中,方法重載和方法重寫各有什麽要求,有什麽區別?

答:方法的重寫Overriding和重載Overloading是Java多態性的不同表現。重寫Overriding是父類與子類之間多態性的壹種表現,重 載Overloading是壹個類中多態性的壹種表現。如果在子類中定義某方法與其父類有相同的名稱和參數,我們說該方法被重寫 (Overriding)。子類的對象使用這個方法時,將調用子類中的定義,對它而言,父類中的定義如同被"屏蔽"了。如果在壹個類中定義了多個同名的方 法,它們或有不同的參數個數或有不同的參數類型,則稱為方法的重載(Overloading)。Overloaded的方法是可以改變返回值的類型

結論:::::::::

Overload(重載):1.可以在壹個類中也可以在繼承關系的類中;2.名相同;3.參數列表不同(個數,順序,類型) 和方法的返回值類型無關。

Override(覆蓋):1.不能存在同壹個類中,在繼承關系的類中;2. 名相同,參數列表相同,方法返回值相同,3.子類方法的訪問修飾符要大於父類的。4.子類的檢查異常類型要小於父類的檢查異常。