Interfaces: Unterschied zwischen den Versionen
Aus FI-Wiki
| Zeile 9: | Zeile 9: | ||
* Wird mit dem Schlüsselwort '''interface''' deklariert | * Wird mit dem Schlüsselwort '''interface''' deklariert | ||
* Methoden sind standardmäßig '''public''' und '''abstrakt''' | * Methoden sind standardmäßig '''public''' und '''abstrakt''' | ||
* kann nur Konstanten enthalten, keine Variablen | |||
* Wird mit '''implements''' eingebunden | * Wird mit '''implements''' eingebunden | ||
* Eine Klasse kann mehrere Interfaces implementieren | * Eine Klasse kann mehrere Interfaces implementieren | ||
Aktuelle Version vom 27. Oktober 2025, 15:47 Uhr
Interfaces
Ein Interface beschreibt eine reine Schnittstelle. Es definiert, was ein Objekt kann, aber nicht wie.
Interfaces enthalten nur Methodenköpfe (ab Java 8 auch Default- und static-Methoden). Eine Klasse, die ein Interface implementiert, verpflichtet sich, alle Methoden zu definieren.
Eigenschaften
- Wird mit dem Schlüsselwort interface deklariert
- Methoden sind standardmäßig public und abstrakt
- kann nur Konstanten enthalten, keine Variablen
- Wird mit implements eingebunden
- Eine Klasse kann mehrere Interfaces implementieren
Beispiel: Interface
interface Bewegbar {
void bewege();
}
Beispiel: Implementierende Klassen
class Auto implements Bewegbar {
@Override
public void bewege() {
System.out.println("Auto fährt");
}
}
class Fahrrad implements Bewegbar {
@Override
public void bewege() {
System.out.println("Fahrrad rollt");
}
}
Verwendung
Bewegbar b1 = new Auto();
Bewegbar b2 = new Fahrrad();
b1.bewege(); // Auto fährt
b2.bewege(); // Fahrrad rollt
Vorteil von Interfaces
- Erlauben Polymorphie über verschiedene Klassen hinweg
- Trennen Schnittstelle und Implementierung
- Ermöglichen gemeinsame Behandlung sehr unterschiedlicher Objekte
