一尘不染

Java不同的保留政策如何影响我的注释?

java

以明确的方式有谁能解释之间的实际差别java.lang.annotation.RetentionPolicy常数SOURCECLASSRUNTIME

我也不太确定“保留注释”是什么意思。


阅读 358

收藏
2020-03-24

共1个答案

一尘不染

  • RetentionPolicy.SOURCE:在编译期间丢弃。这些注释在编译完成后没有任何意义,因此不会写入字节码。
    范例:@Override,@SuppressWarnings

  • RetentionPolicy.CLASS:在上课时放弃。在进行字节码级后处理时很有用。令人惊讶的是,这是默认设置。

  • RetentionPolicy.RUNTIME: 不要丢弃。注释应可在运行时用于反射。例:@Deprecated

2020-03-24