这两个注解主要是用来标示一些类和方法。
InterfaceAudience 类包含三个注解类型,用来被说明被他们注解的类潜在的使用范围(audience)。
- @InterfaceAudience.Public: 对所有工程和应用可用
- @InterfaceAudience.LimitedPrivate: 仅限于某些特定工程,如YARN,MapReduce等
- @InterfaceAudience.Private: 仅限于Hadoop
InterfaceStability 类包含三个注解,用于说明被他们注解的类 的兼容性。
- @InterfaceStability.Stable: 主版本是稳定的,不同主版本间可能不兼容
- @InterfaceStability.Evolving: 不断变化,不同次版本间可能不兼容
- @InterfaceStability.Unstable: 没有任何可靠性和健壮性保证