Объектно-ориентированное программирование

Качественный монтаж и подключение писсуара в Нижнем Новгороде с гарантией.

Объектно-ориентированное программирование - стр. 128


·         расширение: новая операция расширяет унаследованную операцию, учитывая влияние атрибутов подкласса;

·         ограничение: новая операция ограничивается выполнением лишь части действий унаследованной операции, используя специфику объектов подкласса;

·         оптимизация: использование специфики объектов подкласса позволяет упростить и ускорить соответствующий метод;

·         удобство.

Целесообразно придерживаться следующих семантических правил наследования:

·         все операции-запросы (операции, которые используют значения атрибутов, но не изменяют их) должны наследоваться всеми подклассами;

·         все операции, изменяющие значения атрибутов, должны наследоваться во всех их расширениях; • все операции, изменяющие значения ограниченных атрибутов, или атрибутов, определяющих зависимости, должны блокироваться во всех их расширениях (например, операция размер_по_оси_x естественна для класса эллипс, но должна быть заблокирована (заменена пустой операцией) в его подклассе круг);

·         операции не следует переопределять коренным образом; все методы, реализующие одну и ту же операцию, должны осуществлять сходное преобразование атрибутов;

·         унаследованные операции можно уточнять, добавляя дополнительные действия.

Следуя этим правилам, которые, к сожалению, редко поддерживаются объектно-ориентированными языками программирования, можно сделать разрабатываемую программу более понятной, легче модифицируемой, менее подверженной влиянию различных ошибок и недосмотров.

 

Абстрактные классы

 

Суперкласс, в котором заданы только атрибуты и сигнатуры операций, но не определены методы, реализующие его операции, называется абстрактным классом.


Начало  Назад  Вперед



Книжный магазин