Interface

Ein Interface oder Schnittstelle ist ähnlich aufgebaut wie eine Klasse nur mit dem Unterschied das es nur Methodenköpfe. Methodenköpfe, auch abstrakte Methoden genannt sind Methoden die keinen Anweisungsblock enthalten und vom Programmierer vervollständigt werden. Ausserdem kann ein Interface Konstanten, also unveränderbare Variable (z.B. final int = 10;) enthalten. Ein Interface gibt also an welche Methoden eine Klasse enthalten muss die das Interface verwendet und stellt gegebenenfalls Konstanten zur Verfügung (z.B. einen festen Zinssatz, ein minimaler oder maximaler Wert etc.). Typische Anwendung ist ein ActionListener.

Typischer Anwendungsfall sind z.B. Kommunikationsschnittstellen zwischen Client und Server. Durch das Vorgeben der Methoden wird sichergestellt das alle Funktionalitäten gegeben sind.

Im Beispiel definiert das Interface drei Methoden die in der Klasse enthalten sein müssen die das Interface implementiert.

public interface Verbindung {

public void pruefeVerbindung()

public void erzeugeVerbindung()

public void sendeDaten()

}

In der implementierenden Klasse würde das Interface dann folgendermaßen eingebunden werden:

public class Programm implements Verbindung {

public Programm() {} // Konstruktor

public methode1() {  programmeigene Methode
System.out.println("Anweisungen");
}

// implementierte und vervollständigte Methoden
public void pruefeVerbindung() {   
System.out.println("Anweisungen zur Verbindungsprüfung");
}

public void erzeugeVerbindung() {
System.out.println("Anweisungen zur Herstellung der Verbindung");
}

public void erzeugeVerbindung() {
System.out.println("Anweisungen zum Senden der Daten");
}

}