0
我已經在Java中創建一個類爲protected的類中定義的註釋。更具體地說,我正在尋找像Addition這種類型的信息,當然是名稱及其中的字段。閱讀使用反射
我已經在Java中創建一個類爲protected的類中定義的註釋。更具體地說,我正在尋找像Addition這種類型的信息,當然是名稱及其中的字段。閱讀使用反射
可以使用Class#getDeclaredClasses()
其中
返回Class對象反映聲明該Class 對象所表示的類的成員的所有類和 接口的陣列。
然後,您可以遍歷數組,檢查該類是否爲帶有Class#isAnnotation()
的註釋。
例
public class Driver {
public static void main(String[] args) throws Exception {
Class<?>[] classes = Driver.class.getDeclaredClasses();
System.out.println(Arrays.toString(classes));
for (Class<?> clazz : classes) {
if (clazz.isAnnotation()) {
Method[] methods = clazz.getDeclaredMethods();
for (Method method : methods) {
System.out.println(method);
}
}
}
}
@Retention(value=RetentionPolicy.RUNTIME)
@Target(value=ElementType.FIELD)
protected @interface Addition
{
String location();
}
}
打印
[interface com.spring.Driver$Addition]
public abstract java.lang.String com.spring.Driver$Addition.location()