2 回答

TA貢獻1821條經(jīng)驗 獲得超6個贊
因為override基類的virtual方法必須保證簽名相同,參見:C#語言規(guī)范4.0,第1.6.6.4節(jié)。摘錄如下:
1.6.6.4 虛方法、重寫方法和抽象方法
若一個實例方法的聲明中含有 virtual 修飾符,則稱該方法為虛方法 (virtual method)。若其中沒有virtual 修飾符,則稱該方法為非虛方法 (non-virtual method)。
在調(diào)用一個虛方法時,該調(diào)用所涉及的實例的運行時類型 (runtimetype) 確定了要實際調(diào)用的方法實現(xiàn)。在非虛方法調(diào)用中,實例的編譯時類型 (compile-timetype) 負責做出此決定。
虛方法可以在派生類中重寫 (override)。當某個實例方法聲明包括 override 修飾符時,該方法將重寫所繼承的具有相同簽名的虛方法。虛方法聲明用于引入新方法,而重寫方法聲明則用于使現(xiàn)有的繼承虛方法專用化(通過提供該方法的新實現(xiàn))。

TA貢獻1772條經(jīng)驗 獲得超5個贊
既然叫重寫 那么函數(shù)簽名肯定就必須相同。必須傳Page對象
你重寫的時候傳的Page對象 調(diào)用的時候可以傳BacePage對象 呵呵 繼承關(guān)系兩者
- 2 回答
- 0 關(guān)注
- 544 瀏覽
添加回答
舉報