Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Множвеное насл-е. Сравнение множвеного насл-я с одиночным.

Читайте также:
  1. D. обобщение, сравнение анализ ,синтез
  2. II. Сравнение потоков и процессов
  3. Алгоритм тестирования НГМД методом записи-чтения со сравнением.
  4. Внутригосударственные и международные механизмы защиты прав человека, хар-ка, сравнение
  5. Железнодорожный и автомобильный транспорт в сравнение
  6. ЗАДАЧИ НА СРАВНЕНИЕ
  7. Контрольная группа. Сравнение результатов для фона и после воздействия
  8. Критерий Пирсона (сравнение двух эмпирических распределений)
  9. Критерий Пирсона (сравнение эмпирического распределения с теоретическим)

В C++ класс может быть порожден из любого числа базовых класов. Для порождения нового класса от нескольких базовых класов используется следующая форма записи: class имя класса: public|protected|private имя баз класа1, public | protected | private имя баз класа2 и т.д. {объявления членов}. В этом случае объект производного класса будет содержать поля всех базовых класов плюс поля своего класса. Наличие нескольких непосредственых базовых класов назется множвеным насл-ем (multiple inheritance). Класс не может быть задан в качестве непосредственого баз класса более одного раза, но он может быть более одного раза косвеным базовым класом. Класс не может появляться дважды в списке базовых класов, т.к. каждая ссылка на него была бы неоднозначна. Сравнение: Насл-е св-в только одного баз класса назется одиночным (простым) насл-ем, а паралёльное насл-е св-в сразу нескольких- базовых класов назется множвеным (кратным) насл-ем.

28. "Правильное" множвеное насл-е. Понятие интерфейса.

Употребление множвеного насл-я может привести к излишней сложности и взаимосвязи класов. Множвеное насл-е - лучший и безопасный путь определения класов протокола. Класс протокола или интерфейс - класс, состоящий из чисто вирт-ых функций и не содержащий даных. 0тсутствие членов даных в базовом класе полностью устраняет наиболее известные проблемы, связаные с исп-нием множвеного насл-я. Так в производном класе должен быть только один баз класс, содержащий даные, в то время как все остальные базовые классы должны быть интерфейсами.

Предпочтительно использовать соответствующий контейнерный класс (т.е., класс, предназначеный для хранения произвольного кол-ва эл-тов не обязательно одинакового типа, обеспечивая доступ к эл-там по их номеру, а также дополнительные возможности, такие как сортировка, поиск, вставка новых эл-тов, удаление эл-тов и др.). При разработке класса желательно: 0бъявление класса должно обеспечивать клиента информацией, необходимой для успешной работы и ни какой др; Методам должна быть доступна вся информация, необходимая для выполнения их обязаностей, и никакая другая. Представление об объекте - интерфейс.(interface), оно описывает как объект взаимодействует с внешним миром. 0братная сторона объекта связана с его реализацией (implementation). Юзеру разрешен доступ только к тому, что описано в интерфейсной части. Реализация определяет, как достигается выполнение обязаностей, заявленых в интерфейсной части.

 

 




Дата добавления: 2015-01-29; просмотров: 25 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав