从通用基本接口的实例检索类型参数

从通用基本接口的实例检索类型参数,第1张

从通用基本接口的实例检索类型参数

通常,这个问题不容易完全解决。例如,如果它是一个内部类,还必须考虑包含类的类型参数,…

因为仅使用Java本身提供的内容就很难对泛型类型进行反射,所以我编写了一个完成艰苦工作的库:gentyref。请访问http://pre.google.com/p/gentyref/
。例如,使用gentyref,您可以执行以下 *** 作:

Type myType = MyClass.class;// get the parameterized type, recursively resolving type parametersType baseType = GenericTypeReflector.getExactSuperType(myType, baseInterface.class);if (baseType instanceof Class<?>) {    // raw class, type parameters not known    // ...} else {    ParameterizedType pbaseType = (ParameterizedType)baseType;    assert pbaseType.getRawType() == baseInterface.class; // always true    Type typeParameterForbaseInterface = pbaseType.getActualTypeArguments()[0];    System.out.println(typeParameterForbaseInterface);}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5429208.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存