重寫[詞語]

重寫[詞語]
更多義項 ▼ 收起列表 ▲

在C#中,子類可繼承父類中的方法,而不需要重新編寫相同的方法。但有時子類並不想原封不動地繼承父類的方法,而是想作一定的修改,這就需要採用方法的重寫。方法重寫又稱方法覆蓋。

實現方法

通常,派生類繼承基類的方法,因此,在調用對象繼承方法的時候,調用和執行的是基類的實現.但是,有時需要對派生類中的繼承方法有不同的實現.

例如,假設動物類存在"跑"的方法,從中派生出馬和狗,馬和狗的跑得形態是各不相同的,因此同樣方法需要兩種不同的實現,這就需要"重新編寫"基類中的方法。"重寫"基類方法就是修改它的實現或者說在派生類中重新編寫。

簡單套用舉例

//java代碼

//方法重寫

public class Parent {

public void ovel(int i){

/*do something...*/

}

public String ovef(){

/*do something...*/

return "***";

}

}

public class Child extends Parent{

public void ovel(int i){

/*do other something...*/

}

public String ovef(){

/*do other something...*/

return "XXX";

}

}

總結

1、必須是在繼承里

2、方法名、參數個數和參數類型 都必須相同

3、jdk1.5以後,返回值類型可以與父類相同,也可以與父類不同,但是要求返回值類型是父類的子類。如: 父類的返回值類型是Object類,子類的返回值可以是Object類的子類比如String

4、派生類重寫的方法的訪問許可權不能低於基類的許可權

5、派生類拋出的異常應該和基類相等或比基類更小

相關詞條

相關搜尋

熱門詞條

聯絡我們