Скажімо, у мене є базовий клас з ім’ям Entity
. У цьому класі у мене є статичний метод отримання імені класу:
class Entity {
public static String getClass() {
return Entity.class.getClass();
}
}
Тепер у мене є ще один клас, який це продовжує.
class User extends Entity {
}
Я хочу отримати ім'я класу User:
System.out.println(User.getClass());
Моя мета - побачити вивід "com.packagename.User" на консолі, але замість цього я отримаю "com.packagename.Entity", оскільки на клас Entity посилаються безпосередньо зі статичного методу.
Якби це не був статичний метод, це можна було б легко вирішити, використовуючи this
ключове слово в Entity
класі (тобто:) return this.class.getClass()
. Однак мені потрібен цей метод, щоб залишатися статичним. Будь-які пропозиції щодо того, як до цього підійти?