На этом шаге мы перечислим остальные методы класса TObject.
function ClassType: TClass;
Метод ClassType возвращает указатель на класс объекта, для которого был вызван этот метод, что позволяет динамически определять класс объекта в конкретный момент времени.
procedure CleanupInstance;
Метод CleanupInstance выполняет корректное завершение работы с длинными строками и записями уничтожаемого объекта.
procedure FreeInstance; virtual;
Метод FreeInstance освобождает память, выделенную объекту ранее с помощью метода NewInstance. Во время работы вызывает методы InstanceSize и CleanupInstance.
procedure Dispatch(var Message);
Метод Dispatch вызывает управляемые сообщениями методы.
procedure DefaultHandler(var Message); virtual;
Метод DefaultHandler обеспечивает управление всеми сообщениями объекта, для которых он не имеет собственных обработчиков. Метод DefaultHandler класса TObject не выполняет ничего, кроме возврата управления.
function FieldAddress(const Name: ShortString): Pointer;
Метод FieldAddress возвращает адрес заданного параметром Name поля объекта, если это поле является опубликованным (published) или nil, в противном случае.
Полное описание класса TObject и типа TClass определено в модуле System и имеет следующий вид:
TObject = class; TClass = class of TObject; TObject = class constructor Create; procedure Free; class function InitInstance(Instance: Pointer): TObject; procedure CleanupInstance; function ClassType: TClass; class function ClassName: ShortString; class function ClassNameIs(const Name: string): Boolean; class function ClassParent: TClass; class function Classlnfo: Pointe; class function InstanceSize: Longint; class function InheritsFrom(AClass: TClass): Boolean; procedure Dispatch(var Message); class function MethodAddress(const Name: ShortString): Pointer; class function MethodName(Address: Pointer): ShortString; function FieldAddress(const Name: ShortString): Pointer; procedure DefaultHandler(var Message); virtual; class function NewInstance: TObject; virtual; procedure FreeInstance; virtual; destructor Destroy; virtual; end;
На следующем шаге мы рассмотрим класс TClass.