【问题标题】:Uses of custom annotations, how to自定义注释的使用,如何
【发布时间】:2012-07-05 19:35:19
【问题描述】:

假设你设置了一个自定义注解

public @interface ThreadSafe {
}

向代码的读者表明类或方法实际上是线程安全的

除了注释的变体之外,这些类型的自定义注释还能如何使用?

【问题讨论】:

标签: java annotations


【解决方案1】:

如果您只是询问此类注释的潜在应用,这里有一些我想不到的......

  • 反射代码可能会利用注释方法的线程安全性。例如,Guava 的 EventBus 使用 @AllowConcurrentEvents 注释作为其 EventBus 框架的提示。
  • 静态分析工具可以使用注释作为提示——方法应该具有特定属性,或者该方法的用户可以假设特定属性。例如,静态分析工具可能会对注解为 @ThreadSafe 的方法执行额外检查,以确保它们实际上是线程安全的。
  • 您可以设计预处理器来识别优化机会,这些优化机会仅在特定方法是线程安全的情况下才可用。

【讨论】:

    【解决方案2】:

    此类注释可以带来可用于提高算法效率的信息。 RandomAccess 接口用于此目的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-15
      • 2014-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多