Den Namen einer Unterklasse aus einer Superklasse holen

Sagen wir, ich habe eine Basisklasse namensEntity. In dieser Klasse habe ich eine statische Methode, um den Klassennamen abzurufen:

class Entity {
    public static String getClass() {
        return Entity.class.getClass();
    }
}

Nun habe ich noch eine Klasse die erweitert.

class User extends Entity {
}

Ich möchte den Klassennamen von User erhalten:

System.out.println(User.getClass());

Mein Ziel ist es, die Ausgabe von "com.packagename.User" auf der Konsole anzuzeigen. Stattdessen wird "com.packagename.Entity" angezeigt, da die Entity-Klasse direkt von der statischen Methode referenziert wird.

Wenn dies keine statische Methode war, kann dies einfach mit dem @ gelöst werdethis Schlüsselwort innerhalb desEntity class (d. h .:return this.class.getClass()). Ich brauche jedoch diese Methode, um statisch zu bleiben. Irgendwelche Vorschläge, wie man das angeht?

Antworten auf die Frage(24)

Ihre Antwort auf die Frage