![]() |
|
||||||||||
|
|||||
|
стервочка (я мужик)
|
Котяра, официально назначаю Вас своим переводчиком. у Вас замечательно получается повторять мои слова сделав их болие понятными.
|
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
это поддёвка? Немного не понял иронии.)
__________________
Отряд Котовскага |
|
|||||
|
стервочка (я мужик)
|
Котяра, да как хотите
![]() |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
__________________
Отряд Котовскага |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 528
|
Воздержался от темы, потому что имел дело с интерфейсами только в Дельфи, но раз заговорили о Си - я тоже вставлю в тему результаты своего опыта.
Моё мнение в том, что если в конкретном случае можно обойтись без наследования через интерфейсы не потеряв при этом структуру - то лучше обойтись. То есть, я считаю, что избыток интерфейсов - это признак недостаточно чёткого проектирования структуры классов. Но при этом есть ситуации, в которых интерфейсы - лучший выход. Например. Такое действительно может быть, что у двух разнородных классов появляется некоторая общность. Можно было бы, конечно, встроить в иерархию абстрактный класс, представляющий это общее поведение - но это решение может оказаться "натянутым", нелогичным и просто неудобным. Ну и классический пример - тот случай, когда нужно объединить функциональность уже готовых классов, которые написаны либо разными людьми, либо тобою же, но в разное время. То есть интерфейсы могут как запутать в клубок - так и избежать запутывания клубка. |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Это просто термин. наследование — ПОЛУЧЕНИЕ функций и пропертей. Интерфейсность — принятие ПОЛОЖЕНИЙ о функциях и пропертях.
__________________
Отряд Котовскага |
|
|||||
|
[+1 19.01.09]
[+1 17.03.09] Регистрация: May 2008
Сообщений: 27
|
Существенный + использования так и не высказали, а хотелось бы узнать!
например есть некий Интерфейс, скажем основа для машинки, в ней есть методы мув и т.д. к этому интерфейсу пишет у машинок базовый класс являет после этого в функции для подключения машинок к сообщениям физики, аи т.д. передаем их по интерфейсу на уровне подключения их GameScene.addChild(****); вылавливаем ошибку что сюда можно передавать только интерфейс DisplayObject как бывшиму Сишнику эти интерфейсы ужасно не удобны! ![]() Собстено зачем такие жертвы, если Интерфейс наследуем от Sprite, дальше все машинки наследуем от интефейса и все! Последний раз редактировалось iNils; 12.03.2009 в 20:17. |
|
|||||
|
Регистрация: Nov 2008
Сообщений: 528
|
С точки зрения механизма наследования - непосредственного наследования там не происходит (хотя это тоже как посудить).
Но с точки зрения доступа к функциональности класса: реализация одного интерфейса в разных классах - это тот же самый полиморфизм, который обычно достигается путём наследования и перегрузки методов базового класса. По крайней мере я слышал такой термин как "множественное наследование через реализации интерфейсов". |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:51. |
|
|
« Предыдущая тема | Следующая тема » |
|
|