Heim >Java >javaLernprogramm >Können Schnittstellen Methoden aus der Klasse „Object' in Java aufrufen?
In Java sind Schnittstellen deklarierte Entitäten, die einen Vertrag definieren, den eine Klasse implementieren soll. Im Gegensatz zu Klassen erben Schnittstellen nicht direkt von der Object-Klasse.
Obwohl Schnittstellen nicht explizit von Object erben, können sie dennoch Methoden aufrufen, die in der Object-Klasse definiert sind. Dies liegt daran, dass Schnittstellen implizit öffentliche abstrakte Methoden für jede öffentliche Methode in der Object-Klasse deklarieren.
Betrachten Sie beispielsweise den folgenden Code:
<code class="java">public class Test { public static void main(String[] args) { Employee e = null; e.equals(null); } } interface Employee { }</code>
In diesem Code ist Employee ein Schnittstelle und erbt nicht explizit von Object, erkennt der Java-Compiler, dass eine Schnittstelle implizit die Methode „equals“ deklariert, sodass sie auf einer Employee-Instanz aufgerufen werden kann.
Dieses Verhalten ist in der Java-Sprachspezifikation, Abschnitt 9.2, spezifiziert , die besagt, dass eine Schnittstelle ohne direkte Superschnittstellen implizit eine öffentliche abstrakte Mitgliedsmethode für jede in Object deklarierte öffentliche Instanzmethode deklariert. Dadurch wird sichergestellt, dass Schnittstellen mit der Object-Klasse und ihren Methoden interagieren können, ohne explizit von ihr zu erben.
Das obige ist der detaillierte Inhalt vonKönnen Schnittstellen Methoden aus der Klasse „Object' in Java aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!