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

Билет №21:

Класс

Что такое класс

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

  • процесс объединения свойств и методов в один класс называется инкапсуляцией

  • формирование класса удобно тогда, когда над группой обособленных данных требуется выполнить уникальные действия

  • по способу описания класс напоминает модуль: в его разделе Type пишется заголовок (определяется тип класса), а ниже описываются методы в виде подпрограмм

  • по окончании формального описания класса в разделе Var формируются переменные данного класса, которые называются объектами

  • объекты используются аналогично записям

  • на основании одних классов могут разрабатываться другие, в которых либо появляются новые свойства и методы (наследование), либо заменяются старые (полиморфизм)

Как описывается класс

  1. Класс имеет заголовок (интерфейс), в котором указываются имя класса, перечисляются его свойства и методы. Структура заголовка такова                    Type                       имя класса = Class                                                   свойства                                                   заголовки методов                                              End; Свойства перечисляются в виде переменных с указанием типов (без слова Var). Заголовки методов пишутся без кода так же, как в разделе Inteface модуля (исключительно заголовки процедур и функций)

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

Как используется класс

  1. Чтобы воспользоваться описанным классом, необходимо сформировать переменные этого класса. Такие переменные называются объектами и описываются в разделе Var при помощи имён.

  2. В каждом классе имеется два особых метода – конструктор и деструктор, первый чтобы выделить, а второй – освободить память, занимаемую объектом. Перед использованием объекта необходимо вызвать конструктор, а по окончании работы – деструктор.

  3. Доступ к свойствам и методам объектов осуществляется по именам объектов, где через точку пишутся имена соответствующих свойств или методов.

Пример разработки и использования класса

program Sampl_Class;

{Использование класса для работы с матрицами}

{$APPTYPE CONSOLE}

uses

SysUtils;

//===============================================

Type

TMat= //Имя класса

Class //ИНТЕРФЕЙС КЛАССА

m:Array Of Array Of Real; //Свойство "матрица"

Constructor Create(h:Integer=1; w:Integer=1); //КОНСТРУКТОР

Procedure Put(p:Array Of Real); //Метод ввода данных

Procedure Wrt(k:Integer=5; p:Integer=2); //Метод вывода матрицы

Procedure Add(a:TMat); //Метод сложения матриц

Destructor Destroy; override; //ДЕСТРУКТОР

End;

//=============================================== ОПИСАНИЕ МЕТОДОВ КЛАССА

//Конструктор служит для создания объекта.

//Он резервирует память и формирует начальные значения переменных

//

//ВХОД: h-высота матрицы m, w-ширина матрицы

//-----------------------------------------------

Constructor TMat.Create(h:Integer=1; w:Integer=1);

Begin