Wenn wir den Namen der aktuell laufenden Klasse erhalten möchten, wie erhalten wir ihn?
In der Class-Klasse gibt es die folgende Methode:
Zum Beispiel gibt es jetzt eine Klasse Demo7.java
package pxx.test1; public class Demo7 { public static void main(String[] args) { Demo7 demo7 = new Demo7(); System.out.println(demo7.getClass().getName()); } }
Das laufende Ergebnis:
Das Obige ist Der direkte Aufruf von getClass für dieses Objekt () ruft das Klassenobjekt ab und ruft dann getName() auf, um den Namen der laufenden Klasse abzurufen.
Wenn also eine Klasse eine Klasse erbt, wie erhält man dann den aktuellen Klassennamen und den Namen der übergeordneten Klasse? ) Methode und rufen Sie dann den Klassennamen ab. Hierbei ist zu beachten, dass super nur nicht statische Methoden der übergeordneten Klasse aufrufen kann und nicht in statischen Methoden aufgerufen werden kann, da super wie diese auf Objektoperationen basiert . Apropos, getClass() der übergeordneten Klasse wird hier aufgerufen, daher möchten wir den Klassennamen der übergeordneten Klasse abrufen. Nun, nachdem wir es ausgeführt haben, können wir den Klassennamen der übergeordneten Klasse immer noch nicht abrufen Schauen wir uns also diese geClass()-Methode an. Diese Methode befindet sich im Objektobjekt
Es stellt sich heraus, dass diese Methode endgültig ist, das heißt, diese Methode kann von anderen Klassen geerbt werden, aber Es kann daher nicht überschrieben werden. Daher werden letztendlich this.getClass und super.getClass aufgerufen. Sie sind alle getClass-Methoden in der Object-Klasse, und die Definition dieser Methode besteht darin, die Laufzeitklasse von Object zurückzugeben Klassenname anstelle des Namens der übergeordneten Klasse.
Wie erhalte ich also den Namen der übergeordneten Klasse?
Wir haben uns die Klassenklasse angesehen und die folgende Methode gefunden:
Das Obige bedeutet, dass wir die übergeordnete Klasse der aktuell aufrufenden Klasse zurückgeben können Verwenden Sie getName(), um den Namen abzurufen, gehen Sie zum Codepackage pxx.test1; public class Demo8 { int num; String name; public Demo8(){}; }
Auf diese Weise erhalten Sie den Klassennamen der übergeordneten Klasse
Das obige ist der detaillierte Inhalt vonSo erhalten Sie den Klassennamen in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!