Java implementiert Schlüsselwort
Beispiel
An interface
ist eine abstrakte "Klasse", die verwendet wird, um verwandte Methoden mit "leeren" Körpern zu gruppieren:
implements
Um auf die Schnittstellenmethoden zugreifen zu können, muss die Schnittstelle von einer anderen Klasse mit dem Schlüsselwort (anstelle von ) "implementiert" (sozusagen geerbt) werden extends
. Der Körper der Schnittstellenmethode wird von der Klasse "implement" bereitgestellt:
// interface
interface Animal {
public void animalSound(); // interface method (does not have a body)
public void sleep(); // interface method (does not have a body)
}
// Pig "implements" the Animal interface
class Pig implements Animal {
public void animalSound() {
// The body of animalSound() is provided here
System.out.println("The pig says: wee wee");
}
public void sleep() {
// The body of sleep() is provided here
System.out.println("Zzz");
}
}
class MyMainClass {
public static void main(String[] args) {
Pig myPig = new Pig(); // Create a Pig object
myPig.animalSound();
myPig.sleep();
}
}
Definition und Verwendung
Das implements
Schlüsselwort wird verwendet, um eine interface
.
Das interface
Schlüsselwort wird verwendet, um einen speziellen Klassentyp zu deklarieren, der nur abstrakte Methoden enthält.
implements
Um auf die Schnittstellenmethoden zugreifen zu können, muss die Schnittstelle von einer anderen Klasse mit dem Schlüsselwort (anstelle von ) "implementiert" (sozusagen geerbt) werden extends
. Der Hauptteil der Schnittstellenmethode wird von der Klasse "implement" bereitgestellt.
Hinweise zu Schnittstellen:
- Es kann nicht zum Erstellen von Objekten verwendet werden (im obigen Beispiel ist es nicht möglich, ein "Tier"-Objekt in der MyMainClass zu erstellen)
- Schnittstellenmethoden haben keinen Hauptteil – der Hauptteil wird von der Klasse „implement“ bereitgestellt
- Bei der Implementierung einer Schnittstelle müssen Sie alle ihre Methoden überschreiben
- Schnittstellenmethoden sind standardmäßig
abstract
undpublic
- Schnittstellenattribute sind standardmäßig
public
,static
undfinal
- Eine Schnittstelle kann keinen Konstruktor enthalten (da sie nicht zum Erstellen von Objekten verwendet werden kann).
Warum und wann sollten Schnittstellen verwendet werden?
Um Sicherheit zu erreichen - verstecken Sie bestimmte Details und zeigen Sie nur die wichtigen Details eines Objekts (Schnittstelle).
Java unterstützt keine "Mehrfachvererbung" (eine Klasse kann nur von einer Oberklasse erben). Es kann jedoch mit Schnittstellen erreicht werden, da die Klasse mehrere Schnittstellen implementieren kann. Hinweis: Um mehrere Schnittstellen zu implementieren, trennen Sie sie durch ein Komma (siehe Beispiel unten).
Mehrere Schnittstellen
Um mehrere Schnittstellen zu implementieren, trennen Sie sie durch ein Komma:
Beispiel
interface FirstInterface {
public void myMethod(); // interface method
}
interface SecondInterface {
public void myOtherMethod(); // interface method
}
// DemoClass "implements" FirstInterface and SecondInterface
class DemoClass implements FirstInterface, SecondInterface {
public void myMethod() {
System.out.println("Some text..");
}
public void myOtherMethod() {
System.out.println("Some other text...");
}
}
class MyMainClass {
public static void main(String[] args) {
DemoClass myObj = new DemoClass();
myObj.myMethod();
myObj.myOtherMethod();
}
}
Verwandte Seiten
Lesen Sie mehr über Schnittstellen in unserem Java Interface Tutorial .