Java unterstützt keine Mehrfachvererbung von Klassen und Standardmethoden umgehen diese Einschränkung nicht, da Klassen den Status (mit Instanzvariablen) beibehalten können, Schnittstellen jedoch nicht.
Standardmethoden stellen eine begrenzte Form der Mehrfachvererbung von Verhalten bereit und ermöglichen einer Klasse, Verhaltensweisen von mehreren Schnittstellen mit Standardmethoden zu erben.
Konflikte können auftreten, wenn zwei von einer Klasse implementierte Schnittstellen dieselbe Standardmethode haben, wie im Fall von zwei Schnittstellen, Alpha und Beta, beide mit der Methode reset().
Regeln zur Konfliktlösung:
1 Die Klassenimplementierung hat Vorrang vor der Standardschnittstellenimplementierung.
2 Wenn zwei Schnittstellen dieselbe Standardmethode haben und die Klasse die Methode nicht überschreibt, tritt ein Fehler auf.
3 Wenn eine Schnittstelle eine andere erbt und beide dieselbe Standardmethode definieren, hat die Version der geerbten Schnittstelle Vorrang.
Um explizit auf eine Standardimplementierung einer Schnittstelle zu verweisen, können Sie die Syntax verwenden: NameInterface.super.NameMethod().
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3