当前位置: 首页 > 面试题库 >

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

洪飞扬
2023-03-14
问题内容

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

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


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

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

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



 类似资料:
  • 问题内容: 从Java文档中: CLASS:注释由编译器记录在类文件中,但VM在运行时无需保留。 运行时:注释由编译器记录在类文件中,并在运行时由VM保留,因此可以通过反射方式读取它们。 消息来源:注释将被编译器丢弃。 我了解RUNTIME(以便在反射中使用批注)和CLASS(对于编译器)的用法,但我不知道何时使用它可能有用 @Retention(RetentionPolicy.SOURCE) 你

  • 假设我有一个多代理(运行在同一主机上)的Kafka设置,其中有3个代理和50个主题,每个主题配置为有7个分区和3个复制因子。 我有50GB的内存要用于kafka,并确保kafka日志永远不会超过这个内存数量,因此我想配置我的保留策略以防止这种情况。 我已设置删除清理策略: 我应该如何配置上述参数,以便每7天删除一次数据,并确保如果需要,可以在较短的窗口中删除数据,这样我就不会耗尽内存?

  • 我想让某个Kafka主题只保留一天的数据。但如果我们继续向主题(活动)发送数据,它似乎根本没有删除任何数据。我尝试了主题端参数(Retention.ms)和服务器端: 但如果我们继续向它发送数据,它似乎对活的主题不起作用。只有当我们停止向主题发送数据时,它才会遵循保留策略。 那么,一个活动主题的正确配置是什么,只保留数据一段时间?

  • 问题内容: JSR-133常见问题解答说: 但是同步不仅仅是相互排斥。同步确保以可预见的方式使线程在同步块之前或期间对内存的写入对于在同一监视器上同步的其他线程可见。退出同步块后,我们释放监视器,其作用是将缓存刷新到主内存,以便该线程进行的写入对于其他线程可见。在进入同步块之前,我们需要获取监视器,该监视器具有使本地处理器缓存无效的作用,以便可以从主内存中重新加载变量。然后,我们将能够看到以前版本

  • 我正在通过https://www.influxdata.com/blog/getting-started-python-influxdb/留档来查询Python的InspxDB。 我能够创建数据库: 另外,我还在数据库中发送数据: 调用json主体为: 但是很快,我想从数据库中查询指标: 此查询导致错误: 文件ipython-inport-31-6e47204db16b,第1行,在模块client

  • 我基于Kubernetes构建了一个自助服务平台,在这里我们为每个团队创建名称空间,并允许他们“在名称空间内做他们想做的任何事情”(我们设置了资源限制,这样就没有人可以杀死整个集群)。 然而,现在我想在整个组织中实现某种标准。例如,我希望每个PodSpec都定义自己的资源限制,并且希望每个资源都有一个标签,指定它属于哪个应用程序。