Я не уверен, о чем ты говоришь, но ...
type
tmyclasstype = class of tmyclass;
tmyclass = class(TObject)
class function a:integer;
class function b:tmyclass;
class function c:tmyclasstype;
end;
...
class tmyclass.function a:integer;
begin
result := 0;
end;
class tmyclass.function b:tmyclass;
begin
result := tmyclass.create;
end;
class tmyclass.function c:tmyclasstype;
begin
result := tmyclass;
end;
IIRC, это все действительные примеры методов класса. Все остальное недопустимо, поскольку вы не можете получить доступ к любым структурам, переменным или неклассифицированным методам объекта без его создания.