Das hat doch nichts damit zu tun was er will oder braucht
Womit denn sonst?
Der Ansatz an sich macht (
OOP-technisch) keinen Sinn.
Sinnvoll ist der Ansatz schon, ob's jetzt
OOP oder sonstwas für ein Paradigma ist. Statt z.B. eine
TThreadedObject<TStringList>
zu nutzen könnte man natürlich auch eine
TThreadedStringList = class(TStringList)
schreiben. Deren Implementation wäre aber bis auf den Namen der Basisklasse identisch mit TThreadedBlubb, TThreadedBlah und TThreadedSchlock. Das schreit doch nach Generics.
Für sowas sind Class-Helper gedacht.
Die waren dafür gedacht, dass man Delphis TObject in .net reinhämmern kann, sonst für nix.
Und im konkreten Fall bringen sie AFAIK eh nix, weil der OP ja Felder zur Basisklasse hinzufügen will.