Eine "gemeinsame" Vorfahrklasse für deine Klassen.
Dort die Methode als
virtual rein und eventuell auch
abstract, da der Vorfahre keine eigene Funktion hat.
Dann alle Klassen davon ableiten und diese Methode überscheiben (
override).
Ein Cast in die Vorfahrklasse und man kann jeweils auf die aktuelle Implementation zugreifen.
siehe
TStrings (abstrakter Vorfahr) ->
TStringList (eine der vielen Implementationen)