Java-Schnittstelle: Erben, Überschreiben und Überladen von Methoden

In "THE Java™ Programming Language, Fourth Edition" Von Ken Arnold, James Gosling, David Holmes, seine erwähnt, dass:

Absatz: (4.3.2)
"In ähnlicher Weise, wenn eine Schnittstelle erbt mehr als eine Methode mit der gleichen Signatur, oder wenn eine Klasse implementiert verschiedene Schnittstellen enthält eine Methode mit der gleichen Signatur, es gibt nur eine solche Methode. Die Implementierung dieser Methode ist letztlich von der Klasse definiert die Implementierung der Schnittstellen, und es gibt keine Mehrdeutigkeit gibt. Wenn die Methoden haben die gleiche Signatur, aber unterschiedlichen Rückgabetypen, dann die return-Typen muss ein Untertyp des anderen, sonst ist eine compile-time Fehler tritt auf. Die Umsetzung muss definieren Sie eine Methode, die zurückgibt, dass der häufigste Subtyp."

Kann jemand mir einige Beispiel-code, rechtfertigt die Punkte des vorstehenden Absatzes ?

Habe ich versucht, den code zu schreiben und testen, was erwähnt wird, aber ich bin immer Kompilierungsfehler
die sub-Oberfläche verbirgt das Basis-interface-Methode also nur einbauen, sub-interface-Methode.

Vielen Dank im Voraus.
-Arun

  • Kann man den code?
  • veröffentlichen Sie Ihren code und Ihre compiler-Fehler dude... zumindest geben Sie uns etwas zu (a) das Problem reproduzieren; und (b) gehen von dort aus.
  • Jeder, den ich bin wirklich Leid - ich war versucht zu testen, was bereits erwähnt wurde, in der oben genannten para mit j2sdk1.4.2_08 - ich wusste gar nicht, dass das Buch ist geschrieben für JDK1.5, So dass bedeutet, wenn Sie kompilieren Sie das code-snippet von "Daniel Schneller" mit JDK1.4 Sie erhalten ein "ImplementationOfAandB.java:17: methodB() in ImplementationOfAandB nicht implementieren kann, methodB() in InterfaceA; der Versuch, unverträgliche Rückgabetyp" Kompilierungs-Fehler in der Erwägung, dass mit JDK1.5 es läuft einfach gut.
InformationsquelleAutor akjain | 2009-05-18
Schreibe einen Kommentar