Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб3_Разработка_Классов3.doc
Скачиваний:
4
Добавлен:
18.11.2018
Размер:
256.51 Кб
Скачать

1.4. Объекты и классы

Есть разные трактовки термина "класс", показывающие, в частности, чем класс отличается от объекта. Обычно класс понимают как новый тип данных, определяемых пользователем, с которым тесно связаны некие методы. В таком случае объект — это экземпляр этого класса. Класс удобно рассматривать как чертеж или схему будущего объекта. Как разработчик объекта, вы сначала создаете его "чертеж", так же как инженер-строитель проектирует план дома (или инженер-электронщик схему телевизора). Имея такой чертеж, вы располагаете всего лишь проектом дома этого типа. Однако те, кто располагает этим чертежом, могут по нему построить себе дом. Таким на базе класса можно создать объект, обладающий всеми возможностями этого класса.

2. Элементы класса и их особенности

Описание класса содержит ключевое слово class, за которым следует его имя, а далее в фигурных скобках — тело класса, то есть список его элементов. Кроме того, для класса можно задать его базовые классы (предки) и ряд необязательных атрибутов и спецификаторов, определяющих различные характеристики класса:

[ атрибуты ] [ спецификаторы ] class имя_класса [ : предки ] { тело_класса }

Обязательными являются только ключевое слово class, имя и тело класса. Тело класса — это список описаний его элементов, заключенный в фигурные скобки. Список может быть пустым, если класс не содержит ни одного элемента. Таким образом, простейшее описание класса может выглядеть так:

class Demo {}

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

Demo a = new Demo(); // создание экземпляра класса Demo

Demo b = new Demo(); // создание еще одного экземпляра класса Demo

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

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

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

2.1. Состав класса.

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

  • Средства контроля доступа.

  • Конструкторы.

  • Деструкторы.

  • Члены-данные.

  • Методы.

  • Специальный скрытый указатель с именем this.

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

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