Java注释-寻找RetentionPolicy.CLASS的示例
问题内容:
根据Java Annotation API:
RetentionPolicy.CLASS批注由编译器记录在类文件中,但VM在运行时无需保留。
RetentionPolicy.RUNTIME批注由编译器记录在类文件中,并在运行时由VM保留,因此可以通过反射方式读取它们。
我正在寻找“ CLASS”保留政策的示例。当我们需要使用此策略而不是RUNTIME策略时。
问题答案:
在当前项目中,我拥有大量的库。我可以找到的唯一示例是在Google Guava库中com.google.common.annotations.GwtCompatible
。
不过,我不太确定为什么他们选择这种保留策略-也许是为了工具支持,即工具自己读取类文件,而不是通过反射API。不过,我不确定我是否真的知道这种区别的意义。