Schnittstellen
Das Konzept der Schnittstellen in der Programmierung mit Java
Schnittstellen sind die Verbindung eines Objektes zum Benutzercode. Dieser kann dann zu den Schnittstellen programmieren, ohne sich um die versteckte Implementierung des Objekts kümmern zu müssen:
In Java gibt es abstrakte Methoden, mit denen wir die Schnittstellen von ihrer Implementierung trennen können. Eine abstrakte Methode ist ein Methodenkopf ohne Rumpf. Sie wird mit "public/protected abstract" gekennzeichnet und kann in einem Interface oder in einer abstrakten Basisklasse deklariert werden. Das Interface (oder die abstrakte Basisklasse) stellt dann seinerseits einen abstrakten Obertyp dar. Beispiel:
Wenn der deklarierte Typ einer Variablen vom abstrakten Obertyp ist, können wir seinen Polymorphismus nutzen, ohne uns um die konkreten Untertypen kümmern zu müssen. Die Objekte, die der Variablen zur Laufzeit zugewiesenen werden, können von irgendeinem Untertyp sein, über den der Benutzercode nichts wissen muss:
In Java hängt das Konzept der Schnittstellen also eng zusammen mit den Begriffen abstrakte Methode, abstrakter Obertyp (Interface oder abstrakte Basisklasse) und Polymorphismus. Es ermöglicht das Programmieren zu den Schnittstellen, ohne Festlegung von konkreten Implementierungen.