java 8允许:
public List<@NonNull String> names;
但是有没有一种方法可以在运行时访问这个注解,或者它只对编译器插件可用?
有新的 Method#getAnnotatedReturnType
它提供了对返回类型的注解的访问,所以我希望 ParameterizedType
会有类似的 getActualAnnotatedTypeArguments
对于泛型类型参数也是这样,但它不存在。。。
java 8允许:
public List<@NonNull String> names;
但是有没有一种方法可以在运行时访问这个注解,或者它只对编译器插件可用?
有新的 Method#getAnnotatedReturnType
它提供了对返回类型的注解的访问,所以我希望 ParameterizedType
会有类似的 getActualAnnotatedTypeArguments
对于泛型类型参数也是这样,但它不存在。。。
2条答案
按热度按时间5n0oy7gb1#
新的api延续了传统,需要大量的
instanceof
s和类型转换:另请参见此答案的结尾,以获取处理其他场景(如类型变量、通配符类型和数组)的示例。
dpiehjr42#
确实有一种方法
getAnnotatedActualTypeArguments
但是在AnnotatedParameterizedType
,不在ParameterizedType
我在哪里找的。