模块  java.base
软件包  java.lang

Annotation Type Deprecated


  • @Documented@Retention(RUNTIME)@Target({构造器,字段,LOCAL_VARIABLE,METHOD,PACKAGE,模块,PARAMETER,TYPE})public @interface 已过时的
    注释@Deprecated的程序元素是程序员不鼓励使用的程序元素。 由于多种原因,元素可能会被弃用,例如,它的使用可能会导致错误; 它可能会在以后的版本中不兼容地更改或删除; 它已被一种更新的,通常更可取的替代品取代; 或者它已经过时了。

    在未弃用的代码中使用或覆盖已弃用的程序元素时,编译器会发出警告。 在局部变量声明或参数声明或包声明中使用@Deprecated注释不会影响编译器发出的警告。

    不推荐使用某个模块时,在requires使用该模块,但在输出opens子句中不使用该模块会导致发出警告。 不推荐使用的模块不会导致在模块中使用类型时发出警告。

    此注释类型具有字符串值元素since 此元素的值指示首次弃用带注释的程序元素的版本。

    此注释类型具有布尔值元素forRemoval true表示在将来的版本中删除带注释的程序元素的意图。 false表示不鼓励使用带注释的程序元素,但是在注释程序元素时,没有特定的意图将其删除。

    API Note:
    强烈建议使用@deprecated javadoc标记在文档中解释弃用程序元素的原因。 如果适用,文档还应建议并链接到推荐的替换API。 替换API通常具有微妙的不同语义,因此也应该讨论这些问题。

    建议为所有新注释的程序元素提供since值。 请注意, since不能是必需的,因为有许多现有注释缺少此元素值。

    注释元素之间没有定义的顺序。 作为一种风格,应首先放置since元素。

    如果存在@deprecated javadoc标记,则应始终存在@Deprecated注释,反之亦然。

    从以下版本开始:
    1.5
    See The Java™ Language Specification:
    9.6.4.6 @Deprecated
    • Optional Element Summary

      Optional Elements  
      变量和类型 Optional Element 描述
      boolean forRemoval
      指示在将来的版本中是否要删除带注释的元素。
      String since
      返回已注释元素已弃用的版本。
    • Element Detail

      • since

        String since
        返回已注释元素已弃用的版本。 版本字符串的格式和名称空间与@since javadoc标记的值相同。 默认值为空字符串。
        结果
        版本字符串
        从以下版本开始:
        9
        Default:
        “”
      • forRemoval

        boolean forRemoval
        指示在将来的版本中是否要删除带注释的元素。 默认值为false
        结果
        该元素是否可以删除
        从以下版本开始:
        9
        Default: