被注解@Deprecated标记的程序元素是不鼓励使用的程序元素,通常是因为它很危险,或者是因为存在更好的替代方案。

除了对象自身引用自己用@Deprecated标记的方法外,其他情况使用@Deprecated注解标记的类型,方法,字段或构造函数时,Java编译器都会生成deprecation警告。

先看看@Override注解在Java SE中的声明:

package java.lang;

import java.lang.annotation.*;
import static java.lang.annotation.ElementType.*; @Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(value={CONSTRUCTOR, FIELD, LOCAL_VARIABLE, METHOD, PACKAGE, PARAMETER, TYPE})
public @interface Deprecated {
}

由Java源代码声明我们了解到:@Deprecated注解,可以应用在很多地方,包括构造函数、字段、本地变量、方法、包、参数和类。

在一个元素被弃用时,也应使用Javadoc @deprecated标记对其进行记录,如以下示例所示。 在Javadoc注释和注解中使用@符并非巧合:它们在概念上是相关的。 另请注意,Javadoc标记以小写d开头,注解以大写D开头。

package org.springmorning.demo.javabase.annotation.pre;

import java.util.Date;

/**
* @author 春晨
* @date 2019/1/21 7:07
* Copyright 2019 春晨 https://www.cnblogs.com/springmorning/p/10296415.html
*/
public class DeprecatedAnnotation { /**
* @deprecated
* 此方法使用了java.util.Date中弃用的Date(String s)构造函数
*
* @param date 日期 格式为(YYYYMMDD)
* @return Date字符串格式
*/
@Deprecated
public String convertDate(String date){
return new Date(date).toString();
}
}

Java API中有很多地方都使用了@Deprecated注解,例如像上例中使用的java.util.Date类中的方法:

public Date(String s)

大家可以轻易在Java API中找到示例,我这里就不赘述。

@Deprecated注解的使用的更多相关文章

  1. ProtoStuff无法反序列化Deprecated注解成员问题记录

    在开发过程中,遇到一个鬼畜的问题,在DO的某个成员上添加@Deprecated注解之后,通过ProtoStuff反序列化得到的DO中,这个成员一直为null:花了不少时间才定位这个问题,特此记录一下 ...

  2. @Deprecated注解

    它的作用是对不应该再使用的方法添加注解,当编程人员使用这些方法时,将会在编译时显示提示信息,它与javadoc里的@deprecated标记有相同的功能,准确的说,它还不如javadoc @depre ...

  3. @Deprecated注解功能

    @Deprecated注解功能 标记不建议使用的方法,但是仍然可以用 当方法有更好的方法替换时,但是此方法还有使用时可以使用该注解

  4. Java @Deprecated Annotation(注解)

    在本部分的快速指南中,我们将会查看 Java 的 deprecated API 和如何在程序中使用 @Deprecated 注解. @Deprecated Annotation(注解) 作为程序的进化 ...

  5. java编程思想-java注解

    注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便的使用这些数据. 一.定义注解 注解的定义看起来很像接口的定义.事实上,与其他任何Java接口一样, ...

  6. Java基础笔记 – Annotation注解的介绍和使用 自定义注解

    Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 |  被围观 25,969 views+ 1.Anno ...

  7. Java自定义注解开发

    一.背景 最近在自己搞一个项目时,遇到可需要开发自定义注解的需求,对于没有怎么关注这些java新特性的来说,比较尴尬,索性就拿出一些时间,来进行研究下自定义注解开发的步骤以及使用方式.今天在这里记下, ...

  8. 深入理解Java:注解(Annotation)基本概念

    转自:http://www.cnblogs.com/peida/archive/2013/04/23/3036035.html 竹子-博客(.NET/Java/Linux/架构/管理/敏捷) 什么是注 ...

  9. Java从零开始学四十七(注解简述)

    一.Java中注解Annotation 什么是注解:用来描述数据的数据(元数据). Java代码里的特殊标记.它为代码中添加用Java程序无法表达的额外信息提供一种形式化的方法,使用我们可以在未来的某 ...

  10. 框架基础——全面解析Java注解

    为什么学习注解? 学习注解有什么好处? 学完能做什么? 答:1. 能够读懂别人写的代码,特别是框架相关的代码: 2. 让编程更加简洁,代码更加清晰: 3. 让别人高看一眼. spring.mybati ...

随机推荐

  1. Flask快速入门day 01(flask介绍、快速使用、配置文件、路由系统)

    目录 Flask框架 前言: 一.flask介绍 1.介绍 2.使用两种协议编写web 二.flask快速使用 1.快速使用: 2.使用flask编写登录小案例 2.1 login.html 2.2 ...

  2. [MySQL]innodb_flush_log_at_trx_commit与sync_binlog

    1 innodb_flush_log_at_trx_commit 辨析 innodb_flush_log_at_trx_commit = 0 : 每秒将日志缓冲区写入log file,并同时flush ...

  3. MySQL(九)InnoDB数据结构

    InnoDB数据结构 1 数据库的存储结构:页 ​ 索引信息和数据记录都是保存在文件上的,确切来说是保存在页结构中:另一方面,索引是在存储引擎上实现的,MySQL服务器上的存储引擎负责对表中数据的读取 ...

  4. django restframework的简单使用

    django restframework的简单使用 1.快速上手 配置: (pip install djangorestframework==3.12.4) # settings.py INSTALL ...

  5. 记一次python写爬虫爬取学校官网的文章

    有一位老师想要把官网上有关数字化的文章全部下载下来,于是找到我,使用python来达到目的 首先先查看了文章的网址 获取了网页的源代码发现一个问题,源代码里面没有url,这里的话就需要用到抓包了,因为 ...

  6. 03-webpack五个概念

  7. Java 网络编程 —— 创建多线程服务器

    一个典型的单线程服务器示例如下: while (true) { Socket socket = null; try { // 接收客户连接 socket = serverSocket.accept() ...

  8. ChatGPT不算新技术革命,带不来什么新机会(转载)

    吴军,1967年出生,毕业于清华大学和约翰霍普金斯大学,计算机专业博士,前Google高级资深研究员.原腾讯副总裁.硅谷风险投资人. 近日,计算机科学家.自然语言模型专家吴军,就人工智能和ChatGP ...

  9. 文心一言 VS chatgpt (12)-- 算法导论3.1 6~7题

    六.证明:一个算法的运行时间为θ(g(n))当且仅当其最坏情况运行时间为O(g(n)),且其最好情况运行时间为Ω(g(n)) . 文心一言: chatgpt: 要证明「一个算法的运行时间为θ(g(n) ...

  10. 2022-12-20:二狗买了一些小兵玩具,和大胖一起玩, 一共有n个小兵,这n个小兵拍成一列, 第i个小兵战斗力为hi,然后他们两个开始对小兵进行排列, 一共进行m次操作,二狗每次操作选择一个数k,

    2022-12-20:二狗买了一些小兵玩具,和大胖一起玩, 一共有n个小兵,这n个小兵拍成一列, 第i个小兵战斗力为hi,然后他们两个开始对小兵进行排列, 一共进行m次操作,二狗每次操作选择一个数k, ...