Mehrfachvererbung in Klassen spricht gegen die
OOP-Regeln. Durch Mehrfachvererbung in Klassen können Klassenhierarchien zwar wunderschön ausgebaut werden, jedoch nimmt die Übersichtlichkeit und Wartbarkeit schnell stark ab.
Interfaces kommen ja ursprünglich von
COM. Borland hat irgendwann (ich glaube mit Delphi 5) die Interfaces in Delphi integriert und somit neben
COM andere Möglichkeiten eröffnet. Die Mehrfachvererbung ist ein Nebenprodukt davon. Obwohl es keine richtige Mehrfachvererbung ist.
Der Nutzen von Interfaces liegt hauptsächlich bei
COM. Allerdings kann man durch Interfaces wunderbar z.B. PlugIn-Systeme gestalten. Sie dienen der Entkopplung. So sind sie nützlich bei verschiedenen Design-Pattern. Super beispiel sind die Zeos-komponenten. Die Interfaces machen es dort möglich einfach die
DB-Zugriffstechnik schnell zu wechseln.