【发布时间】:2016-09-01 01:17:09
【问题描述】:
我很清楚RetentionPolicy 的含义,并且知道他们在做什么以及何时使用seems to make sense to use them。对于我自己的注释,我确切地知道它们是在运行时、类文件中还是仅用于编译时需要。但是,对于在库中定义的任何注释,恕我直言,您永远无法确定。
例如,javax.annotation.Generated 用于标记生成的代码,但它很少有用。由于 AFAIK 处理字节码的工具比处理源代码的工具多,因此信息在可以使用之前就消失了。
由于don't throwClassNotFoundException 运行时没有注释(与缺少接口不同),使用RetentionPolicy.RUNTIME 似乎不会造成任何伤害。还是我错了?
或者是为了节省几个字节使用不同的Retentions?对我来说,这似乎导致太多问题不值得。我错过了什么?
【问题讨论】:
标签: java annotations retention