Was ist Schnittstellen-Erbschaft?

Schnittstellenerbschaft ist ein Mechanismus in bestimmten Computersprachen, in denen spezielle Funktionen durch eine Kategorie übernommen, und dann muss diese bestimmte Kategorie Implementierungen für jene Funktionen zur Verfügung stellen, um komplett zu sein. Schnittstellen existieren nur in bestimmten objektorientierten Programmiersprachen. Sie können benutzt werden, um mehrfache Erbschaft zu emulieren, beim eine Kategorie multiplizieren nicht wirklich lassen übernehmen, weil es im Allgemeinen keine Begrenzungen zur Zahl Schnittstellen gibt, die eine Kategorie von übernehmen kann. Zusätzlich zu unimplemented Methoden können Schnittstellen allgemeine Konstanten auch umfassen.

In der Schnittstellenerbschaft betrachtet der Gegenstand, der übernimmt, Methodenstummel und die Konstanten, eine Art Schnittstellengegenstand zu sein. So wenn eine Kategorie X von einer Schnittstelle Y übernahm, sein jeder möglicher Fall der Kategorie X auch ein Fall der Kategorie Y. Dieses erhält schwieriger, wenn Schnittstellenerbschaft einer Kategorie mehr als eine verschiedene Schnittstelle mit.einbezieht. Für jede zusätzliche Schnittstelle, die übernommen, kann die resultierende Kategorie als Fall von jedem gesetzmäßig benutzt werden. Wenn eine Kategorie, die von 10 verschiedenen Schnittstellen, Gegenstände dieser Kategorie übernommen, als Fall von elf verschiedenen Gegenständen benutzt werden könnte, einschließlich sich.

Solche komplizierte Erbschaft ist nicht häufig notwendig. Schnittstellenerbschaft verwendet, um zu garantieren, dass eine Kategorie einen spezifischen Satz erforderliches Verhalten hat, und dieses Verhalten ermöglicht ihm, eine Vielzahl der Funktionen durchzuführen, die sie nicht anders tun könnte. Ein allgemeines Beispiel von diesem ist die ActionListener Schnittstelle in Java, das eine Kategorie erfordert, nur eine spezifische Methode einzuführen. Erfolgreiche Implementierung dieser Methode erlaubt einem Benutzer, Knöpfe, Menüeinzelteile oder jeden möglichen anderen Fenstergegenstand in der Kategorie zu steuern, wenn sie gewünscht. Schnittstellenerbschaft ist eine verhältnismäßig einfache Weise, komplizierte Funktionalität einer Kategorie hinzuzufügen, ohne um die meisten schwierigen Erbschaftausgaben zu sorgen.

Einer der größten Vorteile zur Anwendung von Schnittstellenerbschaft ist, dass er erlaubt, dass spezifische Gegenstände in einer generischen Richtung benutzt. Da eine Kategorie, die eine Schnittstelle einführt, ein Fall dieser Schnittstelle ist, kann es verwendet werden jedem möglichem Platz, den ein Fall dieser Schnittstelle angefordert. Z.B. wenn Kategorie A Kategorie C einführt, und Kategorie B einführt auch Kategorie C rt, wenn eine Methode als Parameter einen Fall von Kategorie C, entweder ein Fall von Kategorie A nimmt, oder ein Fall von Kategorie B ein annehmbarer zu verwenden sein Parameter. Schnittstellen können nicht instantiated auf ihren Selbst, weil sie nicht komplett sind, so dort sein nie ein Gegenstand, der lediglich ein Fall von Kategorie C als Parameter war.