几乎没有什么@Deprecated没有适当的文档看到@Deprecated方法更令人生气的了。 我感到失落。 我应该仍然使用该方法吗? 可能这不是开发人员的意图,这就是为什么他/她添加了弃用注释。 我应该使用其他东西吗? 所以…。

使用@Deprecated的规则是什么?

规则#1:做Javadoc怎么做

每当您不赞成使用方法时,请创建一个JavaDoc,该JavaDoc告诉程序员如何不再使用该方法。 不仅要说“不赞成使用此方法,请不要使用它”。 这正是弃用注释和JavaDoc @deprecated单词所说的。 没有必要用英语重复它。 目标读者是Java程序员,应该知道过时意味着什么。

为新方法命名,以替代旧方法。 (使用@link !)这可能不够,也可能不够。 新方法将包含一些说明如何使用它的文档。 不要在JavaDoc中重复(文本或含义)。 只是不要重复自己,文档也应该干燥。 另一方面,您可能要描述如何用新的电话替换旧的电话。 您可能会提示重构。

规则2:不要Javadoc如何

删除旧的JavaDoc文档。 有人可能会争辩说,维护旧代码的用户可能仍然需要它。 事实是,它们在库的旧版本中使用该方法的旧版本。 旧版本的文档仍然存在,它们被冷冻雕刻成石头(或者雕刻成版本库中的发行版)。 弃用该方法的实际版本不应包含过时的文档。 这将鼓励程序员继续使用该方法。 有一种使用不推荐使用的方法的方式:不使用它。 如上规则1中所述,JavaDoc应该仅是当前的描述。

规则3:JavaDoc中不得道歉

不要在JavaDoc中解释为什么不赞成使用该方法。 您是负责任的开发人员。 这是你的决定。 您做出了选择。 其他人必须忍受它。 如果您愿意,可以写一篇关于建筑决策背景的博客。 这可能会有所帮助,但是JavaDoc并不是放置它的地方。

不推荐使用的API JavaDoc仅用于解释如何不使用。

重点是如何 。 不是“为什么不使用它”。

规则4:不赞成使用

如果您想弃用一种方法,那就去做吧! 如果您害怕用户,并且不想让他们的生活变得悲惨而弃用某种方法,那么此决定将使您的生活变得悲惨。 采取所有措施以拥有尽可能长的时间不需要弃用的API。 但是,如果需要弃用某些东西,请立即将其丢弃。 不要感到内,为什么在设计api时就看不到未来。 我们谁也看不到未来完美。 毕竟,生活对未来是无聊的。

如果您对stakcoverflow有关此主题的意见感兴趣,请访问链接的页面。 或者,如果您愿意,可以在这里开始一场火焰大战。 我很

参考: Java Deep博客上的JCG合作伙伴 Peter Verhas 不赞成使用Java注释 。

翻译自: https://www.javacodegeeks.com/2014/02/use-java-annotation-deprecated-the-right-way.html

使用Java注解不正确的方法相关推荐

  1. java 方法注解_使用Java注解不正确的方法

    java 方法注解 几乎没有什么@Deprecated没有适当的文档看到@Deprecated方法更令人生气的了. 我感到失落. 我应该仍然使用该方法吗? 可能这不是开发人员的意图,这就是为什么他/她 ...

  2. java局部变量的描述正确的是_【Java入门课|这才是Java局部变量的正确使用方法,你真的会用这些吗】- 环球网校...

    [摘要]作为一门面向对象编程语言,Java吸收了C++语言的优点,也展现了其强大的一面,我们能在各个地方看到其功能强大和简单易用的两个特征,当然,也吸引了很多程序员的注意力,所以就有人想了解Java的 ...

  3. java服务器测试_正确的方法来测试服务器是否在Java中运行?

    您可以使用HttpURLConnection发送请求并检查响应正文以查找该页面唯一的文本(而不仅仅是检查是否存在响应,以防错误或维护页面或某些内容正在提供) . Apache Commons有一个库, ...

  4. java request body内容_解读@RequestBody的正确使用方法

    本文主要研究的是关于@RequestBody的正确使用方法的相关内容,具体如下. 最近在接收一个要离职同事的工作,接手的项目是用SpringBoot搭建的,其中看到了这样的写法: @RequestMa ...

  5. java 注解的几大作用及使用方法详解(转载)

    ava 注解,从名字上看是注释,解释.但功能却不仅仅是注释那么简单.注解(Annotation) 为我们在代码中添加信息提供了一种形式化的方法,是我们可以在稍后某个时刻方便地使用这些数据(通过 解析注 ...

  6. java扫描指定package注解_java随笔-扫描使用指定注解的类与方法

    前几天项目中让扫描出所有使用Restful API的方法.刚开始还想着用python过滤关键字来查找的,后来想想可以使用反射来搞的.主要包含以下三个步骤: 根据包名解析包的具体路径 查找指定包下指定注 ...

  7. java的注解方式_详解Java注解的实现与使用方法

    详解Java注解的实现与使用方法 Java注解是java5版本发布的,其作用就是节省配置文件,增强代码可读性.在如今各种框架及开发中非常常见,特此说明一下. 如何创建一个注解 每一个自定义的注解都由四 ...

  8. java随笔-扫描使用指定注解的类与方法

    前几天项目中让扫描出所有使用Restful API的方法.刚开始还想着用python过滤关键字来查找的,后来想想可以使用反射来搞的.主要包含以下三个步骤: 根据包名解析包的具体路径 查找指定包下指定注 ...

  9. 已解决java.lang.Integer cannot be cast to java.lang.String异常的正确解决方法,亲测有效!!!

    已解决java.lang.Integer cannot be cast to java.lang.String异常的正确解决方法,亲测有效!!! 文章目录 报错问题 解决方法 福利 报错问题 1.在执 ...

最新文章

  1. 如何设计可自学习的五子棋AI?
  2. php ci框架 自动验证,CodeIgniter表单验证方法实例详解
  3. 【线段树】Segment Tree
  4. LNMP/LEMP(PHP7.0.04+mysql5.7.12+nginx1.10.0)
  5. 小米手机安装证书(安卓)
  6. vue router 跳转php,vue路由:路由跳转后怎么知道切换到那个router-view中
  7. 搭建Git本地服务器(转)
  8. 远程服务异常处理的实践之一:客户端
  9. oracle列转行wm_concat,Oracle列转行函数wm_concat版本不兼容解决方案
  10. 开发基于CXF的 RESTful WebService web 项目 webservice发布
  11. 怎么完全卸载赛门铁克_symantec卸载方法
  12. PHP 网页支付支付宝支付接口对接
  13. 七种经典回归分析法全解析
  14. 空间直线同球体交点求解
  15. 软件结构体系实验作业一——使用状态模式模拟会员积分系统
  16. net::ERR_INCOMPLETE_CHUNKED_ENCODING 200
  17. 【C语言编程】求Fibonacci(斐波那契)数列前40个数
  18. Matlab常用数学函数和数学运算符
  19. 微机原理 || 8253 芯片 (详细讲解 + 经典例题)
  20. Nodejs如何连接Mysql

热门文章

  1. 命令点无效怎么处理_CAD执行修改命令,你试过重复选择对象吗?
  2. python快捷方式图标_python – PyInstaller无法更改快捷方式图标
  3. javabean与json转换(fastjson与jackson两个版本)
  4. maven项目不编译xml文件
  5. java平台脚本+java编译器API
  6. jms面试题_最新的20多个JMS面试问答(2020)
  7. camel apache_如何使用Apache Camel,Quarkus和GraalVM快速运行100个骆驼
  8. netty java_Netty Java快速指南
  9. jakarta ee_Jakarta EE 8状态
  10. line和spline_探索适用于Apache Spark的Spline Data Tracker和可视化工具(第1部分)