怀疑在.net中的多重继承

时间:2011-03-09 10:51:28

标签: .net multiple-inheritance

我们知道所有类都是从.net中的对象类继承而来的。假设我们创建了一个名为ClassA的类。然后我们创建另一个名为ClassB的类,它继承自ClassA。这不是多重继承,因为ClassB继承自Object类和ClassA吗?这不会破坏C#.net不支持多重继承的规则吗?

2 个答案:

答案 0 :(得分:3)

您不明白多重继承是什么。来自维基百科:

  

多重继承是指某些面向对象编程语言的一个特性,其中一个类可以从多个超类继承行为和特性。

来自维基百科的超类条目:

  

超类,基类或父类是从中派生其他类的类。从超类派生的类称为子类,派生类或子类。

在您的示例中,ClassA继承自object。 ClassB继承自ClassA。 ClassA是ClassB的超类。 Object不是ClassB的超类。您的示例不是多重继承。有一个父母,一个孩子。

答案 1 :(得分:1)

不,你不违反规则。由于ClassA是一个对象,因此并不意味着您从两个不同的类继承。你继承了ClassA,从而将'继承链'中的所有特征都带入了它 你不是从2种不同类型继承的,因为ClassA是一个对象。