This question already has answers here:
How to get the generic type at runtime?
(4个答案)
4年前关闭。
我有一个名为
我需要的是一种从所有称为
我挣扎了一段时间,但没有找到路。
谢谢
然后,您只需要格式化字符串并获取''之间的信息
希望对您有帮助。
(4个答案)
4年前关闭。
我有一个名为
NewsDAO
的类,该类扩展了抽象类AbstractDAO
并将其传递给类News
作为参数。public class NewsDAO extends AbstractDAO<News> {
}
我需要的是一种从所有称为
***DAO
的类开始知道的方法,该类的类型作为对位传递给AbstractDAO
。我挣扎了一段时间,但没有找到路。
谢谢
最佳答案
您可以通过以下方式获取要扩展的类的全名:
String fullExtendedClassName = this.getClass().getGenericSuperclass()
.toString();
然后,您只需要格式化字符串并获取''之间的信息
String extendedClassName = fullExtendedClassName.substring(fullExtendedClassName.
indexOf("<") + 1, fullExtendedClassName.indexOf(">"));
希望对您有帮助。
关于java - 如何知道作为parather传递给扩展抽象类的类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37411083/
10-14 18:27