Сомнения в множественном наследовании в .net - PullRequest
0 голосов
/ 09 марта 2011

Мы знаем, что все классы унаследованы от класса объекта в .net. Скажем, мы создаем класс с именем ClassA. Затем мы создаем другой класс с именем ClassB, который унаследован от ClassA. Разве это не множественное наследование, потому что ClassB унаследован от класса Object и ClassA? Не нарушает ли это правило, что C # .net не поддерживает множественное наследование?

Ответы [ 2 ]

3 голосов
/ 09 марта 2011

Вы не понимаете, что такое множественное наследование.Из википедии:

Множественное наследование относится к функции некоторых объектно-ориентированных языков программирования, в которой класс может наследовать поведение и функции от нескольких суперклассов.Запись википедии о суперклассе:

Суперкласс, базовый класс или родительский класс - это класс, из которого происходят другие классы.Классы, производные от суперкласса, называются дочерними классами, производными классами или подклассами.

В вашем примере ClassA наследуется от объекта.ClassB наследуется от ClassA.ClassA является суперклассом ClassB.Объект не является суперклассом ClassB.Ваш пример не множественное наследование.Есть один родитель, один ребенок.

1 голос
/ 09 марта 2011

Нет, вы не нарушаете правила. Поскольку ClassA является объектом, это не означает, что вы наследуете от 2 разных классов. Вы наследуете от ClassA и тем самым берете все признаки из «цепочки наследования».
Вы не наследуете от 2 разных типов, поскольку ClassA является объектом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...