Überschreiben von Java (Empfohlenes Lernen: Java-Kurs )
Umschreiben ist, wenn eine Unterklasse den Implementierungsprozess einer Methode umschreibt, die den Zugriff auf die übergeordnete Klasse ermöglicht. Weder der Rückgabewert noch die formalen Parameter können geändert werden. Das heißt, die Shell bleibt unverändert und der Kern wird neu geschrieben!
Der Vorteil des Überschreibens besteht darin, dass Unterklassen ihr eigenes spezifisches Verhalten nach Bedarf definieren können. Mit anderen Worten: Unterklassen können die Methoden der übergeordneten Klasse nach Bedarf implementieren.
Eine überschriebene Methode kann keine neuen geprüften Ausnahmen oder Ausnahmen auslösen, die umfassender sind als die von der überschriebenen Methode deklarierten.
Zum Beispiel:
Eine Methode der übergeordneten Klasse deklariert eine geprüfte Ausnahme IOException, aber wenn Sie diese Methode überschreiben, können Sie keine Ausnahme auslösen, da Exception ist IOException Die übergeordnete Klasse of IOException kann nur Ausnahmen von Unterklassen von IOException auslösen.
In objektorientierten Prinzipien bedeutet Überschreiben, dass jede vorhandene Methode überschrieben werden kann. Das Beispiel lautet wie folgt:
class Animal{ public void move(){ System.out.println("动物可以移动"); }} class Dog extends Animal{ public void move(){ System.out.println("狗可以跑和走"); }} public class TestDog{ public static void main(String args[]){ Animal a = new Animal(); // Animal 对象 Animal b = new Dog(); // Dog 对象 a.move();// 执行 Animal 类的方法 b.move();//执行 Dog 类的方法 }}
Die Kompilierungs- und Ausführungsergebnisse des obigen Beispiels lauten wie folgt:
动物可以移动 狗可以跑和走
Wie Sie in sehen können Im obigen Beispiel gehört b zwar zum Typ „Animal“, führt aber die Move-Methode der Klasse „Dog“ aus.
Dies liegt daran, dass während der Kompilierungsphase nur der Referenztyp des Parameters überprüft wird.
Zur Laufzeit gibt die Java Virtual Machine (JVM) jedoch den Typ des Objekts an und führt die Methoden des Objekts aus.
Das obige ist der detaillierte Inhalt vonWas ist Java-Rewriting?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!