假设我有这个注解类
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MethodXY {
public int x();
public int y();
}
public class AnnotationTest {
@MethodXY(x=5, y=5)
public void myMethodA(){ ... }
@MethodXY(x=3, y=2)
public void myMethodB(){ ... }
}
那么有没有一种方法可以查看一个对象,使用@MethodXY 注释“寻找”方法,其中它的元素 x = 3,y = 2,然后调用它?
谢谢
原文由 nobody 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是一个方法,它返回带有特定注释的方法:
它可以根据您的特定需求轻松修改。请注意,提供的方法遍历类层次结构,以便找到具有所需注释的方法。
这是满足您特定需求的方法:
对于找到的方法的调用,请参考 教程。这里的潜在困难之一是方法参数的数量,这可能因找到的方法而异,因此需要一些额外的处理。