Книга: Основы объектно-ориентированного программирования
Устройства и принтеры
Устройства и принтеры
Вот простой пример переопределения типа. Рассмотрим понятие устройства, включив предположение о том, что для любого устройства есть альтернатива, так что устройство можно заменить, если оно по каким-либо причинам недоступно:
class DEVICE feature
alternate: DEVICE
set_alternate (a: DEVICE) is
-- Пусть a - альтернативное устройство.
do
alternate := a
end
... Прочие компоненты ...
end
Принтер является устройством, так что использование наследования оправдано. Но альтернативой принтера может быть только принтер, но не дисковод для компакт-дисков или сетевая карта, - поэтому мы должны переопределить тип:
Рис. 16.6. Устройства и принтеры
class PRINTER inherit
DEVICE
redefine alternate, set_alternate
feature
alternate: PRINTER
set_alternate (a: PRINTER) is
-- Пусть a - альтернативное устройство.
... Тело как у класса DEVICE ...
... Прочие компоненты ...
end
В этом и проявляется специализирующая природа наследования.
- Глава 9 Принтеры и прочие периферийные устройства
- Глава 8 Периферийные устройства
- Периферийные устройства
- 1.5 Структура драйвера устройства Windows
- 5.7 Устройства NAS под управлением Windows и моментальные снимки
- 5.2.2.2. Устройства ввода информации в персональный компьютер
- Возле часов постоянно отображается значок Безопасное извлечение устройства, который предлагает отключить жесткий диск и ...
- Не всегда отображается значок Безопасное извлечение устройства, когда вставляю «флэшку». Это началось после установки ст...
- Переносные устройства на основе flash-памяти
- Основные сведения об устройствах и драйверах
- Ответная реакция устройства и пульты дистанционного управления домашней электронной техникой
- Глава 6 Устройства