
**vcp1********11.9.2004
Лекция 15. Программирование с объектами
15.1 Класс объектов, элементы класса
Понятия объекта и класса были введены в разделе 14.2. Повторно рассмотрим их.
Класс - это сложный тип данных, определяемый пользователем.
Он представляет модель реального объекта в виде данных и функций и реализуется в виде фрагмента программы.
Другими словами, класс описывает параметры объекта и те действия, которые он "умеет" выполнять. Класс - это тип сложного объекта. Класс имеет имя. Оно может быть любым.
Пример: класс Student.
Имена классов часто начинаются с буквы T( от словаtype= тип), но можно их выбирать любыми. В системеBuilderС++ имена стандартных классов начинаются с буквы Т. Пусть имеем класс с именем ТА:
classTA{
. . . . . . . . .
};
Определение класса представляется фрагментом обычной программы на С++.
Имея класс, можно объявлять объекты этого класса, например, Ta xx;.
Класс содержит элементы-данные ( это имена с типом, их иногда называют полями) и методы (функции класса или элементные функции), см. рис. 15.1.
Элементы-данные
Любой
элемент
(имена с
типом,
класса
глобальные )
Методы класса
(функции)
Рис. 15.1 Элементы класса
Элементы-данные - это обычные глобальные переменные программы,
представляющей класс, т.к. они объявляются вне функций.
Элемент класса – это любой из указанных элементов, т.е. либо данное, либо функция.
Каждый элемент класса имеет определенный уровень защиты - модификатор доступа,
см. ниже. Следовательно, класс состоит из уже изученных нами элементов:
переменных, массивов, функций и т.д.
Класс - это не объект, а только описание всех характеристик и возможностей объекта. В программе действуют объекты. Объекты в программировании - это модели реальных или воображаемых объектов. Каждый объект имеет имя и класс:
студент Иванов, город Москва, девочка Маша и т.д.
Причитаем такое описание:
int m; float x; TA sk;
Здесь объявлен объект skклассаTAи две обычных переменных.
Переменные можно рассматривать как простейшие объекты стандартных типов.
тип
зн.
имяз
указатель
Рис. 15.2 Объект - это область памяти (зн. = значение).
Объект - это некоторая область памяти компьютера в общем случае.
В ООП объектами являются переменные типа класс.
При объявлении каждого объекта выделяется память для его данных и
выполняется инициализация. Методы класса не тиражируются.
В лекции 13 кратко рассматривался стандартный класс stringи его методы.
В лабораторной работе №4 нужно создать объекты класса stringили написать и использовать свой класс, например,Tmystring. Разработать хороший класс сложно,
но использовать его легко, аналогично использованию стандартных подпрограмм в
процедурном программировании.
Почти любую программу, убрав из нее функциюmain, можно объявить классом, но зачем? Цели могут быть такими:
для защиты данных при работе программы,
для использования наследования при разработке нового класса,
для использования программы при разработке других программ,
- для более ясного понимания больших программ, в которые
исходная программа входит как некоторая часть.
Кроме того, ООП – это мода, которой следуют все и бороться с которой очень трудно. Все современные программы обычно используют объекты.