Конструирование и уничтожение объектов в Pascal.

Type

Определение объекта и класса в Pascal

 

класс в ООП - это структурный тип данных, который включает описание полей данных, процедур и функций, работающих с этими полями данных.

Определение класса в Borland Pascal 7.0 осуществляется в два этапа. На первом этапе описывается структура класса, где указываются: имя класса, поля данных и прототипы (заголовки) методов:

имя класса = class(имя P_класса)

<опубликованные П,М,СВ>

Private(обращаться к ним возм только в пределах модуля)

< скрытые П,М,СВ >

Public(возможно обращение из любой части программы)

< общедоступные П,М,СВ >

Protected(доступны только в классах, порожденных от исходного)

< защищенные П,М,СВ >

Published(описывает опубликов эл-ты)

< опубликованне П,М,СВ >

Avtomated

< П,М,СВ объектов>

End;

 

Type

TStud=class

Private

Fname:string[30];

Fgroup:string[5]:

Faddress:string:[50];

Public

Procedure out_int;

End;

 

Create размещает объект в памяти. Destroy удаляет объект из памяти. Создаваемому классу всегда должны быть доступны констр и дестр класса TObject, кот отвечает за размещение и выгрузку объектов. Констр Create класса TObject выполн след операции

1)вызывает метод с именем InstanceSize для определения размера памяти, необходимого для размещения объектов.

2)запрашивает у ОС требуемую память и выделяет ее NewInstance

3)инициализация поля объектов нулевыми исходными значениями с помощью процедуры InitInstance

В рез-те выполнения 3-х указанных процедур констр возвращает адрес области памяти , выдел объетом.

Destroy при своем выполнении вызывает метод CleanUpInstance, кот выполняет операцию конкретного завршения работы с длинными строками и другими сложными структурами данных. Затем обращается к методу InstanceSize для определения размера объекта и далее освобождает память, занимаемую объектом.