Was willst du denn überladen?
Aber ja, "overload" funktioniert wie mit jeder normalen Methode auch.
PS: Man kann sich auch aussuchen wo man den generischen Typen deklariert.
Delphi-Quellcode:
TDummy = record // oder class macht keinen großen Unterschied
class procedure Test<T:class>(ObjectList: TCustomObjectList<T>); static;
end;
TDummy.Test<TZahlungsart>(ZahlungsartList);
TDummy.Test<TPostleitzahlen>(Postleitzahlen);
TDummy<T:class> = record // oder class macht keinen großen Unterschied
class procedure Test(ObjectList: TCustomObjectList<T>); static;
end;
TDummy<TZahlungsart>.Test(ZahlungsartList);
TDummy<TPostleitzahlen>.Test(Postleitzahlen);
Letzeres hat einen Vorteil, wenn man eine Funktion mit einem bestimmten Typen oft aufruft.
Ersteres, wenn man viele Verschiedene Typen nutzt.
Und es läßt sich beliebig kombinieren.
Delphi-Quellcode:
type ZahlDummy = TDummy<TZahlungsart>;
ZahlDummy.Test(ZahlungsartList);