Die Schnittstelle ist wie folgt definiert:
[可见度] interface 接口名称 [extends 其他的接口名] { // 声明变量 // 抽象方法}
Der Körper der Schnittstelle enthält abstrakte Methoden, aber alle Methoden innerhalb der Schnittstelle (per Definition ) sind Da es sich um eine abstrakte Methode handelt, wird das Schlüsselwort abstract in der Schnittstelle nicht benötigt. Da eine Schnittstelle eine Sammlung externer Verhaltensweisen darstellt, ist jede Methode innerhalb der Schnittstelle öffentlich.
Zum Beispiel:
public interface Predator { boolean chasePrey(Prey p); void eatPrey(Prey p); }
Die Mitglieder in der Schnittstelle sind statisch (static
), final
und öffentlich (public
). Im Gegenteil, sie können vom Typ sein jede Klasse oder Schnittstelle.
Empfohlene verwandte Video-Tutorials: Java-Online-Tutorial
Schnittstellenimplementierung:
public class Lion implements Predator { public boolean chasePrey(Prey p) { // programming to chase prey p (specifically for a lion) } public void eatPrey (Prey p) { // programming to eat prey p (specifically for a lion) } }
Anleitung:
Wenn eine Klasse eine Schnittstelle implementiert, aber nicht alle Methoden der Schnittstelle implementiert, muss sie als abstrakt (abstrakte Klasse) markiert werden. Eine Unterklasse einer abstrakten Klasse muss ihre unvollendeten Methoden implementieren. Wenn die Unterklasse immer noch nicht alle Methoden der Schnittstelle implementiert, muss die Unterklasse dennoch als abstrakt gekennzeichnet werden. Die
-Schnittstelle wird normalerweise in der Programmiersprache Java für Callback-Funktionen verwendet. Java erlaubt die Übergabe von Methoden als Parameter nicht. Daher besteht eine Lösung darin, eine Schnittstelle zu definieren und diese Schnittstelle als Parameter der Methode zu verwenden, um die Methodensignatur des Objekts zu verwenden.
Unterschnittstelle
Die Schnittstelle kann in mehrere verschiedene Schnittstellen erweitert werden. Sie können die oben beschriebene Methode verwenden, zum Beispiel:
public interface VenomousPredator extends Predator, Venomous { //介面主體 }
oben Programmfragmente sind gesetzlich definierte Unterschnittstellen. Im Gegensatz zu Klassen ermöglichen Schnittstellen eine Mehrfachvererbung, und Predator
und Venomous
können dieselbe Methode definieren oder erben, z. B. kill(Prey prey)
beide Methoden. VenomousPredator
Erste Schritte beim Erlernen von Java
Das obige ist der detaillierte Inhalt vonSo schreiben Sie eine Schnittstelle und implementieren sie in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!