Is there a way to inherit properties from multiple classes in C#?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Multiple Inheritance in C#
号
在下面的示例中,我希望
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | public class Material { public enum FabricTypes { Cotton, Wool, Polyester, Nylon } public FabricTypes Fabric { get; set; } public Color Color { get; set; } } public class Pigment { public enum PigmentQualities { Fine, Average, Poor } public PigmentQualities Quality { get; set; } public Color Color { get; set; } } public class Shirt : Material //, Pigment { public Shirt() { Fabric = FabricTypes.Cotton; Color = new Color(); //Quality = PigmentQualities.Fine; } } |
我很难提供一个更好的例子,但这基本上是我要做的。我知道我可以创建接口,但这些接口不会自动继承属性。请看,因为我不想每次创建类似于
C不允许从多个类继承。
但你为什么要这样做?衬衫可以有两个特性:材料和颜料。当初始化一个衬衫实例时,可以设置这些属性,比如将其传递到一个具有这些属性集的构造函数中。或者创建一个构造函数,在其中可以传递某些属性,并在该构造函数中实例化材质和颜料。