如何将动态加载的注记类转换为注释?

时间:2014-03-31 17:10:43

标签: java reflection

我想实现以下逻辑:

  1. 使用ClassLoader.loadClass( String )
  2. 加载注记类
  3. 使用Class
  4. 检查给定的Class.isAnnotationPresent(Class<? extends Annotation>)对象是否具有该注释

    但是,loadClass()的返回类型为Class<?>,不能直接在isAnnotationPresent()中使用。那么,我应该采取哪些步骤来使用isAnnotationPresent()中加载的注释类?

    这似乎是一个简单的问题,但我无法找到强大的谷歌的答案。 : - (

    无论如何,非常感谢你。

1 个答案:

答案 0 :(得分:3)

您可以使用Class.asSubclass()

Class<? extends Annotation> a = cl.loadClass(...).asSubclass(Annotation.class);