Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1_Atributy_private (4).doc
Скачиваний:
3
Добавлен:
01.03.2025
Размер:
170.5 Кб
Скачать

31) Преимущества объектно-ориентированного программирования.

Инкапсуляция

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

Абстрагирование.

Полиморфизм.

Интерфейс.

В связи со своими особенностями объектно-ориентированное программирование имеет ряд преимуществ перед структурным (и др.) программированием. Выделим некоторые из них:

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

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

Особенность ООП

ООП позволяет сократить время на написание исходного кода, однако ООП всегда предполагает большую роль предварительного анализа предметной области, предварительного проектирования. От правильности решений на этом предварительном этапе зависит куда больше, чем от непосредственного написания исходного кода.

32.

Вторым основным принципом объектно-ориентированного программирования является наследование. Смысл его в том, что если вы желаете создать новый класс, лишь немногим отличающийся от уже описанного, то нет необходимости переписывания заново существующих полей и методов. Достаточно просто объявить, что новый класс порождается от существующего type TNewClass = class (TOldClass), т.е. является потомком или дочерним классом старого класса, называемого предком или родительским классом. При этом к новому классу автоматически (по умолчанию) будут добавлены все поля, методы и свойства старого класса. Поэтому, при описании потомка достаточно просто указать новые, дополнительные поля, методы и свойства. Если в описании нового класса имя предка не указано (как в примерах выше) то новый класс порождается от класса TObject, ближними или далекими потомками которого являются все остальные классы. Кстати, методы Create, Free и Destroy наследуются именно от класса TObject. Если имеет место совпадение имен новых и унаследованных полей и методов, то говорят, что они перекрываются.

36. События объектов.. Событие – это специальный метод, который реагирует на потоки, возникающие в ОС или в программе.  Обработчик события – это процедура обработки события – реакция на событие. Окно инспектора объектов состоит из 2 частей:

  1. Properties (свойства) описывает свойства объекта;

  2. Events (события) описывает события, которые можно совершать над объектом.

35. Элементы символьных строк могут быть преобразованы из одного регистра в другой. Для этого используются стандартные функции _strlwr() и _strupr(). Следует отметить, что в некоторых версиях компиляторов имена данных функций могут следовать без ведущего символа подчеркивания. Функция _strlwr () принимает в качестве параметра указатель на строку символов, преобразует эту строку к нижнему регистру (строчные символы) и возвращает указатель на полученную строку.

Функция обращения строки strrev() меняет порядок следования символов на обратный (реверс строки).

Примеры операций со строками. Empty Возвращается пустая строка. Свойство со статусом read only Compare Сравнение двух строк. Метод перегружен. Реализации метода позволяют сравнивать как строки, так и подстроки. При этом можно учитывать или не учитывать регистр, особенности национального форматирования дат, чисел и т.д. CompareOrdinal Сравнение двух строк. Метод перегружен. Реализации метода позволяют сравнивать как строки, так и подстроки. Сравниваются коды символов Concat Конкатенация строк. Метод перегружен, допускает сцепление произвольного числа строк Copy Создается копия строки Format Выполняет форматирование в соответствии с заданными спецификациями формата. Ниже приведено более полное описание метода Intern, Islntern Отыскивается и возвращается ссылка на строку, если таковая уже хранится во внутреннем пуле данных. Если же строки нет, то первый из методов добавляет строку во внутренний пул, второй - возвращает null. Методы применяются обычно тогда, когда строка создается с использованием построителя строк - класса StringBuilder Join Конкатенация массива строк в единую строку. При конкатенации между элементами массива вставляются разделители. Операция, заданная методом Join, является обратной к операции, заданной методом Split. Последний является динамическим методом и, используя разделители, осуществляет разделение строки на элементы

37. Ссылки и указатели. Указатель представляет собой адрес памяти, который указывает или ссылается на определенный участок. Чтобы объявить указатель, имя переменной предваряется *. ^ Ссылка позволяет создать псевдоним или второе имя для переменных. Синтаксис: <тип>& <псевдоним>=<имя переменной>; Ссылка не является переменной.

39. Типы данных С++. примеры

Все типы языка С++ можно разделить на простые (скалярные), составные (агрегатные) и функциональные. Простые типы могут быть стандартными и определенными программистом.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]