2010-02-28 1 views
1

Рассмотрим следующее, только программа тело, синтаксис не правильно:Выполнение переопределения функции в базовом классе с помощью функции имени в дочернем классе ее дочернего класса (множественное наследование)?

class super 
{ 
    func1();//the method which is to be be overridden 
} 
class sub1 extends super 
{ 
    func1(); 
} 
class sub2 extends sub1 
{ 
    func1(); 
} 

class Main 
{ 
    main() 
} 
+1

На каком языке это? Добавьте соответствующий тег. – Kobi

+1

Это не похоже на сценарий множественного наследования - всего два уровня одиночного наследования. Не могли бы вы сказать более конкретно, каков ваш вопрос? – itowlson

+0

Я предполагаю, что с ключевым словом extends автор может ссылаться на Java. Как и другие сделанные комментарии, это не множественное наследование, оно просто показывает иерархию наследования. Просто обратите внимание на то, что Java не является дизайном для поддержки наследования нескольких классов. –

ответ

1
  1. Это очень возможно, и общее использование наследования. Однако для того, чтобы это хорошо работало, некоторые языки требуют дополнительных ключевых слов (new или virtual, в зависимости от ваших намерений)
  2. Это не составляет multiple inheritance. множественное наследование - это когда один класс выводит многие базовые классы.
1

Множественное наследование - это сценарий, когда один класс наследуется от нескольких классов. Wiki

Пример: Класс D является производным от класса как В1 и В2 класса

class D : public B1, public B2 { 
}; 

Ваш пример, как и itowlson уже указывалось, это два уровня одиночного наследования, которое не равно множественное наследование.