我有一个带有实现 Bar 的接口 Foo。接口 Foo 有一个方法“doMe()”,带有一个方法注解@Secured。这是唯一安全的方法。
现在我编写了以下代码来遍历类并查找带有@Secured 的方法。(此方法尚未完成,我正在尝试通过第一个单元测试。)
/**
* Determine if a method is secured
* @param method the method being checked
* @return true if the method is secured, false otherwise
*/
protected static boolean isSecured(Method method) {
boolean secured = false;
Annotation[] annotations = method.getAnnotations();
for(Annotation annotation:annotations){
if(Secured.class.equals(annotation.getClass())){
secured = true;
break;
}
}
if(secured){
return true;
}
return secured;
}
除了 doMe() 之外的方法在 getAnnotations() 上为 Foo 和 Bar 返回 0 个成员。问题是 doMe() 还为 Foo 和 Bar 返回 0 个成员。
我正在寻找比我更了解反射的人,因为这应该不难找到。:)
谢谢。