Вопрос: Какой язык программирования вы предпочитаете
|
Иллюстрированный самоучитель по Delphi 6
Глава 9
КЛАССЫ И
ИНТЕРФЕЙСЫ
Классами в Object Pascal называются
специальные типы, которые содержат поля, методы и свойства. Как и любой другой
тип, класс служит лишь образцом для создания конкретных экземпляров реализации,
которые называются объектами. Сразу же уточню, что в предшественнике Object
Pascal - Turbo Pascal объектами называются типы, имеющие много общего с классами
Object Pascal. Однако существенные усовершенствования, внесенные в объектную
модель Object Pascal, заставили разработчиков языка ввести для обозначения объектов
специальный термин -
класс,
заимствованный, кстати, из Си++. Для совместимости
с ранее разработанными программами системы Turbo Pascal with Objects 7.0 в Object
Pascal сохранен тип-объект object, поддерживающий “старую” объектную модель.
Поскольку все возможности этой модели доступны классам, я не буду рассматривать
ее в этой книге, а “освободившийся” термин
объект
буду употреблять исключительно
для обозначения конкретного
экземпляра реализации класса.
Важным отличием классов от других
типов является то, что объекты класса всегда распределяются в куче, поэтому
объект-переменная фактически представляет собой лишь указатель на динамическую
область памяти. Однако в отличие от других указателей при ссылке на содержимое
объекта запрещается использовать символ “
л
” за именем объекта:
type
TMyClass = class(TObject)
Field: Integer;
end;
var
MyClass: TMyClass;
begin
MyClass
^
.Field
:= 0; //
Ошибка! Следует писать так:
MyClass.Field := 0;
end;
|
|
|