你的回答的意思是不是这样的 : 假如我创建了一个自定义注解,他贴了@Retention(RetentionPolicy.CLASS) , 那么在运行时, 贴有这个自定义注解的内容跟没有贴是没有区别的,对吗
时间: 2024-04-21 09:24:15 浏览: 111
Java注解的Retention和RetentionPolicy实例分析
是的,你理解得很正确。当一个自定义注解贴有 `@Retention(RetentionPolicy.CLASS)` 注解时,在运行时是无法直接访问和处理这个注解的内容的。从运行时的角度来看,贴有该注解的内容与没有贴注解是没有区别的。
`@Retention(RetentionPolicy.CLASS)` 注解的保留策略是在编译后的字节码中保留,但在运行时不可见。因此,无法通过反射来获取贴有这个注解的信息。
如果你希望在运行时通过反射来访问和处理注解,应该使用 `@Retention(RetentionPolicy.RUNTIME)` 注解。这样我们才能在运行时获取贴有该注解的信息,并根据需要执行相应的操作。
非常抱歉之前可能给你带来了困惑,希望这次能够清楚地解答你的问题。如果还有任何疑问,请随时提出。谢谢!
阅读全文