сlass function ClassName:ShortString
Возвращает имя класса
сlass function ClassNameIs(const Name:ShortString):Boolean
Принимает значение True, если имя класса равно заданному
сlass function ClassParent:tClass
Возвращает указатель на родительский класс
сlass function ClassInfo:pointer
Возвращает указатель на структуру с дополнительными данными об опубликованных методах и свойствах.
сlass function InstanceSize:Longint
Возвращает размер экземпляра класса
сlass function InheritsFrom (aClass: tClass):Boolean
Возвращает True, если данный класс наследует от заданного
сlass function MethodAddress(const Name:ShortString):Pointer
Возвращает адрес метода по его имени (только для опубликованных методов)
сlass function MethodName (Addres: pointer):ShortString
Возвращает имя метода по его адресу (только для опубликованных методов)
В Delphi 4 в класс tObject добавлены еще два виртуальных метода - AfterConstruction и BeforeDestruction. Как следует из названия, они вызываются сразу после создания экземпляра объекта и непосредственно перед уничтожением.
Перегрузка методов
В Delphi 4 появилась новая разновидность методов - перегружаемые. Перегрузка нужна для того, чтобы произвести одинаковые или похожие действия над разнотипными данными. Перегружаемые методы описываются с ключевым словом overload.
|
|
Type
tFirstClass=class
E:extended;
procedure SetData(aValue: Extended); overload;
end;
tSecondClass=class(tFirstClass)
I:integer;
procedure SetData(aValue: Integer); overload;
end;
Объявив метод SetData перегружаемым, в программе можно использовать обе его реализации одновременно. Это возможно потому, что компилятор определяет тип передаваемого параметра (целый или вещественный) и в зависимости от этого подставит вызов соответствующего метода.
Для перегрузки виртуального метода используется зарезервированное слово reintroduce:
procedure SetData(aValue:string); reintrouce;overload;
На перегрузку методов накладывается ограничение: нельзя перегружать методы, находящиеся в области видимости published.