RetentionPolicy.CLASS和RetentionPolicy.SOURCE的预期需求是什么.在哪个注释场景中,我们可以使用这些?我想要一些例子.
来自Java doc:
CLASS:注释将由编译器记录在类文件中,但在运行时不需要由VM保留.
SOURCE:编译器将丢弃注释.
Yur*_*ake -1
RetentionPolicy 用于控制注释的生命周期和可见性
RetentionPolicy.CLASS - 定义的注释将存储在.class文件中,但在运行时不可用。如果您根本不指定任何保留策略,则这是默认保留策略。
RetentionPolicy.SOURCE - 构建代码时,编译器将忽略定义的注释。因此,注释仅在源代码中可用,在.class文件中不可用,在运行时也不可用。
根据用例使用两个注释,以免.class文件受到不必要的污染。
如果注释由扫描代码的构建工具使用,您可以使用RetentionPolicy.SOURCE保留策略。