【发布时间】:2013-04-24 08:42:45
【问题描述】:
我正在尝试做一些 Java 注释魔术。我必须说我仍在追赶注释技巧,并且某些事情对我来说还不是很清楚。
所以...我有一些带注释的类、方法和字段。我有一个方法,它使用反射对类运行一些检查并将一些值注入到一个类中。这一切都很好。
但是,我现在面临一个需要注释实例(可以这么说)的情况。所以......注释不像常规接口,你不能对一个类进行匿名实现。我知道了。我在这里查看了一些关于类似问题的帖子,但我似乎无法找到我正在寻找的答案。
我基本上想获取注释的实例,并能够使用反射设置其中的一些字段(我想)。有没有办法做到这一点?
【问题讨论】:
-
您不能实例化或修改注释。当您运行代码时,它们已经存在。您只能检索它们。您能否提供一些代码示例来说明您正在尝试做的事情?
-
你试过java.lang.Class/java.lang.reflect.Method中的getAnnotation()
-
有趣的问题。我试着环顾四周,得到了这些。 stackoverflow.com/questions/266903/… 看看拉尔夫的第一个答案。我认为应该这样做。 stackoverflow.com/questions/2786292/…这会有帮助吗?
-
你试过getClass().getAnnotations()吗?
-
我不是要检查一个类是否用某个注释进行了注释。这部分注入我已经使用反射实现了。我有一个极端情况,我必须将
MyAnnotation添加到Set<MyAnnotation>并且我没有注释的实例。
标签: java reflection annotations