2014-03-31 16 views
0

我想實現以下邏輯:如何將動態加載的註記類轉換爲Annotation?

  1. 加載註釋類ClassLoader.loadClass(String)
  2. 檢查一個給定Class對象有使用Class.isAnnotationPresent(Class<? extends Annotation>)

但是,這種標註的loadClass()返回類型爲Class<?>,它不能直接用於isAnnotationPresent()。那麼,我應該採取哪些步驟來使用isAnnotationPresent()中加載的註記類?

這似乎是一個簡單的問題,但我只是無法從強大的Google中找到答案。 :-(

在任何情況下,我非常感謝你

回答

3

可以使用Class.asSubclass()

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