という名前の基本クラスがあるとしましょうEntity
。そのクラスには、クラス名を取得するための静的メソッドがあります。
class Entity {
public static String getClass() {
return Entity.class.getClass();
}
}
今、私はそれを拡張する別のクラスを持っています。
class User extends Entity {
}
Userのクラス名を取得したい:
System.out.println(User.getClass());
私の目標は、コンソールに「com.packagename.User」の出力を表示することですが、Entityクラスは静的メソッドから直接参照されているため、代わりに「com.packagename.Entity」になります。
これが静的メソッドでない場合は、クラスthis
内のキーワード(つまり、:)を使用することで簡単に解決できます。ただし、このメソッドを静的に保つ必要があります。これにアプローチする方法について何か提案はありますか?Entity
return this.class.getClass()