比方說,我有以下類別:C#inheritahce混合/匹配
public class A
{
public string a {get; set;}
}
public class B
{
public int b {get; set;}
}
public class C
{
public DateTime {get; set;}
}
...等等。如果我有多重繼承,我可以做的是:
public class AC : A, C {}
public class BD : B, D {}
public class ACD : AC, D {}
...其中子類將繼承父類的屬性。假設這種情況只涉及屬性,並且沒有重複屬性。在C#中,沒有多重繼承的東西,所以我上面的符號不起作用。我也知道接口不會購買任何東西,因爲接口只需要實現類實現屬性(我們現實世界問題中的屬性也都有註釋,而且不能放入接口)。
目前,我們正在通過將遺傳串聯在一起解決問題,但我們希望更靈活一些。而我們唯一能想到的另一種選擇是複製/粘貼(顯然不是最佳的)。任何解決這個難題的戰略思路?
你是否嘗試過構圖而不是繼承? – Jay
@Jay右邊他可以有公共類AC {public AC(A a,C c){...}}',然後設置一些本地公共屬性A,C.如果需要的話,他可以填補這一切依賴注入。 –
串聯遺傳是什麼意思?如果你添加更多的物質更接近你的現實世界的例子,它可能會有所幫助。另外,您當前的解決方案有何問題?即您需要更多靈活性的方式? –