我對如何實現這個有點困惑。接口參數
我已經在int中定義了一個名爲IActivity的接口。
我已經然後創建了一個實現此接口並添加了一些額外的屬性
EngagementActivity和MPEngagementActivity兩班。爲了清楚起見,這兩個類實現了IActivity並聲明瞭一些額外的屬性
然後我有一個名爲ActivitySvc的基類,它將實現這兩種活動通用的所有功能的虛擬方法。
我然後實現從基類派生並必須提供自己的實現在基類中聲明的SaveActivity方法兩大類:
public abstract void SaveActivity(IActivity activity);
我的問題是執行的時候,我收到錯誤SaveActivity方法,因爲我的活動對象是IActivity類型,因此它沒有特定於EngagementActivity和MPEngagementActivity類的成員。
我在做什麼錯?
在此先感謝。
當使用界面,你通常*不*關心什麼是基礎數據,只是它實現了接口。聽起來就像你試圖違反這一點。 – crashmstr 2014-09-29 14:57:16
這些來自IActivity具體類的不同成員代表什麼?您可以將它隱藏在EngagementActivity和MPEngagementActivity類中,並將邏輯包裝到通過IActivity公開的常用方法中,而不是直接從SaveActivity方法訪問它們。 – 2014-09-29 16:56:50