Heim >Java >JavaErste Schritte >Was macht @Override in Java?

Was macht @Override in Java?

王林
王林nach vorne
2020-06-15 16:17:235215Durchsuche

Was macht @Override in Java?

Lassen Sie uns zunächst über die allgemeine Funktion von @Override sprechen:

1. Überprüfen Sie selbst, ob Sie vorhandene Methoden in der übergeordneten Klasse korrekt überschrieben haben.

2. Sagen Sie den Leuten, die den Code lesen, dass es sich um eine Umschreibmethode handelt.

Beispiel:

Zum Beispiel haben wir jetzt eine Basisklasse:

Was macht @Override in Java?

(Empfohlenes Video-Tutorial: Java-Video-Tutorial )

Jetzt schreiben wir eine Apple-Unterklasse, erben diese Basisklasse und überschreiben die Methode show_name() in der Basisklasse.

Was macht @Override in Java?

Das Ergebnis der Ausführung ist, dass die Wörter Apple:2 gedruckt werden.

Wenn wir die Methode der übergeordneten Klasse manuell überschreiben, ist es tatsächlich leicht, sich die Parameter der Methode falsch zu merken. Wenn Sie zu diesem Zeitpunkt nicht @Override hinzufügen, werden Sie vom Editor nicht aufgefordert: Wenn wir dieses Tag beispielsweise nicht hinzufügen, ändern Sie den Parameter leise in den Float-Typ.

Was macht @Override in Java?

Zu diesem Zeitpunkt haben wir die Methode tatsächlich nicht gemäß unserer Absicht erfolgreich überschrieben, sodass ein versteckter Fehler entstanden ist. Im Gegenteil, der Effekt des Hinzufügens von Override ist

Was macht @Override in Java?

Die IDE gab eine Fehlermeldung aus, die darauf hinweist, dass unsere Überschreibmethode fehlgeschlagen ist.

ist oft das Ergebnis, wenn wir uns darauf vorbereiten, die Methode zu überschreiben.

Ein weiteres Beispiel: Jetzt fügen wir der Fruit-Klasse eine private Methode hinzu und versuchen,

 @Override
    private void grow(){
    }

in Apple zu überschreiben. Dies führt dazu, dass der Compiler einen Fehler auslöst -Level-Fehler, aber es gibt Zu diesem Zeitpunkt werden wir ihn nicht finden: Das heißt, wir versuchen, die private Methode zu überschreiben, aber wenn wir das Override-Tag entfernen, meldet der Compiler keinen Fehler und kann ausgeführt werden.

Tatsächlich ist das sogenannte Grow You Override in Apple nur eine private Methode für Apple selbst. Völlig neuer Ansatz.

Dies führt zu der Frage: Was ist Replikation?

Im objektorientierten Bereich können nur Schnittstellen, gemeinsam genutzte Methoden und geerbte Methoden nicht überschrieben werden. Aber nachdem ich noch einmal darüber nachgedacht hatte, wurde mir klar: Es ist nicht so, dass es nicht überschrieben werden kann, sondern dass Es gibt überhaupt kein Vorrang vor dem Konzept der privaten Methoden!

Dies ist die ursprüngliche Absicht des objektorientierten Designs. Die private Methode selbst soll innerhalb der Klasse gekapselt werden und möchte nicht, dass andere sie extern ändern oder darauf verweisen.

Empfohlenes Tutorial: Java-Einstiegsprogramm

Das obige ist der detaillierte Inhalt vonWas macht @Override in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen