Es gibt halt ein paar bekannte Dinge, wo sie verwendet werden:
* automatische Speicherverwaltung
gibt sich selbst frei, wenn nicht mehr benutzt
* Austauschbarkeit, siehe sakura
das Interface ist gleich, aber was runter ist, muß es nicht sein und dem Nutzer braucht es nicht zu interessieren
z.B. ein Einstellungenspeicherinterface, was auf INI,
CSV, Datenbank, Registrie, Webservice oder ... geht
oder wo drunter je nach Zielsystem für Android/Linux/iOS/Windows/... die Behandlung anders ist
* nachträgliche Verbindung
z.B. das "einheitliche" Verhalten für datensensitive Komponenten zugreifbar machen
TDBEdit und TDBCheckbox sind nicht voneinander vererbt, bzw. bekommen ihre Datenbindung erst am Ende ihrer Vererbungshierarchie
* in Richtung
COM-Interfaces (vermutlich der Ursprng der Delphi-Interfaces)
da wird es und Anderem als Schnittstelle zu Objekten benutzt, welche sich außerhalb deines Programms befinden
* ...