我有一個包含方法void DoCommand();
的接口。現在我將強制所有子類繼承基類方法DoCommand()
。但我需要每個類爲此方法定義一個不同的參數,以便使用適當的參數爲頁面提供服務。強制類實現一個方法而不限制C#中的參數
我該怎麼做? 這是可能的!我正在構建一個ASP.NET Web應用程序,並且實現該方法的頁面已經從頁面基類繼承,所以我認爲Interface是我唯一的選擇。因爲只有一個基類被允許繼承類。
編輯
我希望說明什麼,我需要這個可以讓你幫我想出了一個更好的設計,並堅持像OOP豐富的概念。
我有19頁,每一頁都需要一種方法來收集來自輸入控制器的數據在本頁面並把它放在一個對象(19頁.. 19種類型的對象)
,所以我需要收集( );被迫,那麼每個頁面將作爲一個參數適當的對象類型..它更有意義嗎?
順便說一句,如果你認爲我的設計是完全錯誤的,一個全新的設計模式,歡迎(Y)
你是什麼意思不同的參數?可能你可以在你的界面中做一些類似於void DoCommand(object obj)的東西,然後將它限制在繼承它的類中。我相信只要你的參數類型是一種對象,你應該很好去 – Prescott 2011-04-17 11:35:18
爲什麼你需要這樣做?如果你不知道它有哪些參數,你打算如何調用它? – 2011-04-17 11:35:23
@Prescott ..例如,基類中的方法將是DoCommand。但是,子類[1]將實現它DoCommand(MyItem項目)和子類[2]將它實現爲DoCommand(價格價格)..嗯我會嘗試對象的事情! – lKashef 2011-04-17 11:40:28