@Deprecated注解的使用
被注解@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注解的使用的更多相关文章
- ProtoStuff无法反序列化Deprecated注解成员问题记录
在开发过程中,遇到一个鬼畜的问题,在DO的某个成员上添加@Deprecated注解之后,通过ProtoStuff反序列化得到的DO中,这个成员一直为null:花了不少时间才定位这个问题,特此记录一下 ...
- @Deprecated注解
它的作用是对不应该再使用的方法添加注解,当编程人员使用这些方法时,将会在编译时显示提示信息,它与javadoc里的@deprecated标记有相同的功能,准确的说,它还不如javadoc @depre ...
- @Deprecated注解功能
@Deprecated注解功能 标记不建议使用的方法,但是仍然可以用 当方法有更好的方法替换时,但是此方法还有使用时可以使用该注解
- Java @Deprecated Annotation(注解)
在本部分的快速指南中,我们将会查看 Java 的 deprecated API 和如何在程序中使用 @Deprecated 注解. @Deprecated Annotation(注解) 作为程序的进化 ...
- java编程思想-java注解
注解(也被称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便的使用这些数据. 一.定义注解 注解的定义看起来很像接口的定义.事实上,与其他任何Java接口一样, ...
- Java基础笔记 – Annotation注解的介绍和使用 自定义注解
Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 | 被围观 25,969 views+ 1.Anno ...
- Java自定义注解开发
一.背景 最近在自己搞一个项目时,遇到可需要开发自定义注解的需求,对于没有怎么关注这些java新特性的来说,比较尴尬,索性就拿出一些时间,来进行研究下自定义注解开发的步骤以及使用方式.今天在这里记下, ...
- 深入理解Java:注解(Annotation)基本概念
转自:http://www.cnblogs.com/peida/archive/2013/04/23/3036035.html 竹子-博客(.NET/Java/Linux/架构/管理/敏捷) 什么是注 ...
- Java从零开始学四十七(注解简述)
一.Java中注解Annotation 什么是注解:用来描述数据的数据(元数据). Java代码里的特殊标记.它为代码中添加用Java程序无法表达的额外信息提供一种形式化的方法,使用我们可以在未来的某 ...
- 框架基础——全面解析Java注解
为什么学习注解? 学习注解有什么好处? 学完能做什么? 答:1. 能够读懂别人写的代码,特别是框架相关的代码: 2. 让编程更加简洁,代码更加清晰: 3. 让别人高看一眼. spring.mybati ...
随机推荐
- 二进制安装Kubernetes(k8s) v1.24.3 IPv4/IPv6双栈
二进制安装Kubernetes(k8s) v1.24.3 IPv4/IPv6双栈 Kubernetes 开源不易,帮忙点个star,谢谢了 介绍 kubernetes(k8s)二进制高可用安装部署,支 ...
- [IDE]IDEA build artifacts过程很慢的解决方案[转载]
解决方案 可能1 可能是缓存的文件太多了导致: File->Invalidate Caches /Restart,清理缓存, 并重启IDEA.重启之后,会重建索引, 此过程较慢, 但build的 ...
- Mysql关联删除CSV中的相关数据
问题描述:提供一个csv文件,记录的是一些不同数据库的不同表中的共同字段account_id数据,需要在A库的account表中做关联删除 解决思路:csv文件中储存的都是account_id,六位纯 ...
- 版本依赖控制工具Maven
Maven 简介 依赖管理工具 如果说A工程里面用到了B工程的类.接口.配置文件等这样的资源,那么就说A依赖B 构建管理工具 构建:使用原材料生产产品的过程 安装:把一个Maven工程经过打包操作生产 ...
- 设置Windows主机的浏览器为wls2的默认浏览器
这里以Chrome为例. 1. 准备工作 wsl是可以使用Windows主机上安装的exe程序,出于安全考虑,默认情况下改功能是无法使用.要使用的话,终端需要以管理员权限启动. 我这里以Windows ...
- OpenAI的离线音频转文本模型 Whisper 的.NET封装项目
whisper介绍 Open AI在2022年9月21日开源了号称其英文语音辨识能力已达到人类水准的Whisper神经网络,且它亦支持其它98种语言的自动语音辨识. Whisper系统所提供的自动语音 ...
- 解决ffmpeg源码不能编译ffplay问题
虽然不是很大问题,还是记录一下,避免以后忘记!!! 总共两个原因影响了源码编译不能生成ffplay可执行文件,如下: 1.系统中没有安装SDL,直接去官网下载SDL源码编译安装http://www.l ...
- 编程开发8大语言详解,为什么Java是我最推荐的?
一. 前言 很多没有接触过编程语言的同学,都会觉得编程开发特别高端和神奇,担心理解不了更担心学不会. 当然,也有人会认为,你既然是做编程的,那么你应该什么都会,什么软件的开发都能完成,这是平哥经常听到 ...
- iOS中的3种定时器
在iOS中有3种常见的定时器,它们会根据不同的场景进行选择使用. 1.DispatchSourceTimer: 基于GCD实现. 2.CADisplayLink:基于屏幕刷新实现. 3.Timer:基 ...
- Protobuf: 高效数据传输的秘密武器
当涉及到网络通信和数据存储时,数据序列化一直都是一个重要的话题:特别是现在很多公司都在推行微服务,数据序列化更是重中之重,通常会选择使用 JSON 作为数据交换格式,且 JSON 已经成为业界的主流. ...