![]() |
|
||||||||||
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Конечно пример максимально упрощен, не содержит ничего "лишнего". Не надо искать в нем какой-то конкретный практический смысл "as is". А так я могу Вам тысячу примеров привести, только зачем? Когда будет нужно, Вы сами мимо не пройдете.
Навскидку 3 примера. 1) Инструмент в рисовалке. Карандаш, кисточка, резинка - по сути действие одно, хотя результат и настройки разные. Абстрактному классу "Инструмент" передаете конкретный - карандаш, кисточка и т.д., и Инструмент заставляет его "работать" с холстом по действиям пользователя. Суть "работы" не волнует Инструмент - что именно делать, решает Карандаш или Резинка или Аэрограф. 2) Пункты в выпадающем меню. Каждый объект списка может быть как просто кнопочкой, так и другим выпадающим Меню и даже неактивным Разделителем. Но для конкретного списка все они - просто MenuItem, объекты, составляющие список, которые нужно отобразить. Как они будут реагировать на поведение пользователя - их личное дело. 3) Юниты армии Двемеров. Тяжелые лучники, кавалерия, алебардисты и бронзовые големы - все они разных классов, но должны слушаться одних и тех же "приказов". Конечно, многие задачи позволяет решить наследование, но далеко не все.
__________________
Reality.getBounds(this); |
![]() |
Часовой пояс GMT +4, время: 14:57. |
|
|
« Предыдущая тема | Следующая тема » |
|
|