Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПС с СЧ Джафаров 421.doc
Скачиваний:
4
Добавлен:
01.04.2025
Размер:
367.1 Кб
Скачать

1.4.1.5. Инкапсуляция в Delphi

В языках программирования инкапсуляция имеет одно из следующих значений, либо их комбинацию:

  • языковой механизм ограничения доступа к определённым компонентам объекта;

  • языковая конструкция, способствующая объединению данных с методами (или другими функциями), обрабатывающими эти данные.

В Delphi для создания скрытых полей или методов их достаточно объявить в секции private.

Для создания интерфейса доступа к скрытым полям в Delphi введены свойства. Для описания свойства в Delphi служит слово property.

1.4.1.6. Наследование в Delphi

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

Для использования механизма наследования в Delphi необходимо в объявлении класса справа от слова class указать класс предок. Абсолютно все классы в Delphi являются потомками класса TObject. Если класс-предок не указан, то подразумевается, что новый класс является прямым потомком класса TObject.

Множественное наследование в Delphi частично поддерживается за счёт использования классов-помощников (СlassHelpers).

1.4.1.7. Полиморфизм в Delphi

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

Язык программирования поддерживает полиморфизм, если классы с одинаковой спецификацией могут иметь различную реализацию — например, реализация класса может быть изменена в процессе наследования.

Кратко смысл полиморфизма можно выразить фразой: «Один интерфейс, множество реализаций».

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

1.4.1.8. Абстракция в Delphi

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

Абстракция является основой объектно-ориентированного программирования и позволяет работать с объектами, не вдаваясь в особенности их реализации.

1.4.2. Операторы Delphi

Список операторов через пробел:

: = + — * / div mod not and or with xor shl shr ^ = <>>= <= <> @ in is as