Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.

Share this Page URL
Help

9 OOP III: Interfaces > 9.1 Grundlagen - Pg. 197

9 9.1 OOP III: Interfaces Grundlagen Es wurde bereits erwähnt, dass es in Java keine Mehr- fachvererbung von Klassen gibt. Die mçglichen Schwie- rigkeiten beim Umgang mit mehrfacher Vererbung und die Einsicht, dass das Erben nichttrivialer Methoden aus mehr als einer Klasse in der Praxis selten zu realisieren ist, haben die Designer dazu veranlasst, dieses Feature nicht zu implementieren. Andererseits sah man es als wünschenswert an, dass Klassen eine oder mehrere Schnittstellendefinitionen erben kçnnen, und hat mit den Interfaces ein Ersatzkonstrukt geschaffen, das dieses Feature bietet. 9.1.1 Definition eines Interface Ein Interface ist eine besondere Form einer Klasse, die ausschließlich abstrakte Methoden und Konstanten ent- hält. Anstelle des Schlüsselworts class wird ein Inter- face mit dem Bezeichner interface deklariert. Alle Me- thoden eines Interface sind implizit abstrakt und çffentlich. Neben Methoden kann ein Interface auch Konstanten enthalten, die Definition von Konstruktoren ist allerdings nicht erlaubt. Wir wollen uns ein einfaches Beispiel ansehen. Das folgende Listing definiert ein Interface Groesse, das die drei Methoden laenge, hoehe und breite enthält: 001 002 003 004 005 006 007 008 /* Groesse.java */ public interface Groesse { public int laenge(); public int hoehe(); public int breite(); } Listing 9.1: Definition eines Interfaces Teil III