@InterfaceAudience 与 @InterfaceStability

来源:互联网 发布:淘宝双11现金红包 编辑:程序博客网 时间:2024/06/06 09:44

       hadoop common 下的两个类 InterfaceAudience ,InterfaceStability ;

InterfaceAudience 有三个抽象方法,主要用于说明使用的范围

 

 

/**
   * Intended for use by any project or application. 在任务项目或应用中可使用
   */

@InterfaceAudience.Public

 

/**
   * Intended only for the project(s) specified in the annotation.
   * For example, "Common", "HDFS", "MapReduce", "ZooKeeper", "HBase".

   * 只能用在指定的项目中如"Common", "HDFS", "MapReduce", "ZooKeeper", "HBase"
   */
@InterfaceAudience.LimitedPrivate

 

/**
   * Intended for use only within Hadoop itself. 只能在hadoop本身项目中使用
   */

@InterfaceAudience.Private

 

 

InterfaceStability 有三个抽象方法,主要用于说明版本的稳定性,及有特定包的依赖

 

/**
   * Can evolve while retaining compatibility for minor release boundaries.;
   * can break compatibility only at major release (ie. at m.0). 主版本是稳定的,不同主版本间可能不兼容
   */

@InterfaceStability.Stable

/**
   * Evolving, but can break compatibility at minor release (i.e. m.x) 不断变化,不同次版本间可能不兼容
   */

@InterfaceStability.Evolving

/**
   * No guarantee is provided as to reliability or stability across any 不能提供稳定性和可靠性
   * level of release granularity.
   */

@InterfaceStability.Unstable