Was ist der Unterschied zwischen abstrakten Java-Klassen und -Schnittstellen?
Abstrakte Klasse: In Java wird eine durch das Schlüsselwort abstract geänderte Klasse als abstrakte Klasse bezeichnet, und eine durch das Schlüsselwort abstract geänderte Methode wird als abstrakte Methode bezeichnet Es gibt nur Methodenanweisungen, keinen Methodenkörper. Merkmale abstrakter Klassen:
1. Abstrakte Klassen können nicht instanziiert und nur vererbt werden
2. Es muss sich um eine abstrakte Klasse handeln, die abstrakte Methoden enthält abstrakte Methoden;
3. Der Modifikator einer abstrakten Methode kann nur öffentlich oder geschützt sein, und der Standardwert ist öffentlich.
4. Die Unterklasse muss die abstrakte Methode der übergeordneten Klasse implementieren. Andernfalls müssen Unterklassen auch als abstrakte Klassen definiert werden.
5 Abstrakte Klassen können jedoch nicht zur Instanziierung verwendet werden von Unterklassen aufgerufen werden.
Schnittstelle : Die Schnittstelle in Java wird mit dem Schlüsselwort interface geändert:
1 Die Schnittstelle kann Variablen enthalten und Variablen werden als öffentlich bezeichnet statisches Finale von Hermit. Die Methode wird von Hermit als öffentliche Zusammenfassung bezeichnet.
2 Die Schnittstelle unterstützt mehrere Schnittstellen, was das Problem indirekt löst der Einzelvererbung in Java;
3. Eine Klasse kann mehrere Schnittstellen implementieren.
4 🎜>
Standardmethode (Standardmethode): JDK 1.8 ermöglicht das Hinzufügen nicht abstrakter Methodenimplementierungen zu Schnittstellen, diese müssen jedoch mit dem Standardschlüsselwort geändert werden. Die Methode, die die Standardmethode definiert, muss nicht von der Implementierungsunterklasse implementiert werden. kann aber nur von dem Objekt aufgerufen werden, das die Unterklasse implementiert. Wenn eine Klasse mehrere Schnittstellen implementiert und diese Schnittstellen dieselbe Standardmethode enthalten, muss die Unterklasse die Standardmethode überschreiben 🎜>Statische Methode: Statische Methode ist in JDK 1.8 zulässig. Das Schlüsselwort ändert eine Methode und stellt eine Implementierung bereit, die als statische Schnittstellenmethode bezeichnet wird. Statische Methoden der Schnittstelle können nur über die Schnittstelle aufgerufen werden (Schnittstellenname. Name der statischen Methode).Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen abstrakten Java-Klassen und -Schnittstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!