比方说,我有以下类别: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.如果需要的话,他可以填补这一切依赖注入。 –
串联遗传是什么意思?如果你添加更多的物质更接近你的现实世界的例子,它可能会有所帮助。另外,您当前的解决方案有何问题?即您需要更多灵活性的方式? –