我应该使用JavaDoc弃用还是Java中的注释?

目前有两种方法可以将代码标记为java中的depreacted。

通过JavaDoc

/** * @deprecated */ 

或者作为一个注释:

 @Deprecated 

这是我的问题 – 我发现在使用Eclipse时将方法标记为不赞成时,声明两者都有点过分。 我真的只想使用其中之一。

但是使用注释给编译器提供了实际有用的附加信息吗?

但只使用注释,我不能说明为什么该方法不推荐使用 – 我只能用JavaDoc来做到这一点,而不使用specling为什么不好。

那么,我只能使用其中之一吗? 或者我应该学会如何指定两者?

你应该使用两者。 Annotation允许编译器在使用不推荐使用的方法时显示警告,javadoc解释了原因。 两者都很重要。

根据Oracle的Java注释教程 :

当一个元素被弃用时,它也应该使用Javadoc @deprecated标记来logging。

从马的口中 :

注:Java语言规范要求编译器在使用标有@Deprecated注释的类,方法或字段时发出警告。 虽然Sun编译器目前是这样做的,但Java语言规范并不要求编译器在标有@deprecated Javadoc标签的类,方法或字段被访问时发出警告。

所以基本上,如果你想保证会有编译器警告,你需要使用注释。 而且由于某些APIdevise者惊人的无能,你还需要指定javadoc标签来给出解释。

就个人而言,我会说注释是无用的,应该被忽略,直到它被修复,因为任何好的编译器或IDE都会显示带有javadoc标签的警告。

你应该指定两个。

注释让编译器知道它并在使用该方法时触发警告。 JavaDoc属性让开发人员在开始使用它之前知道。

这是两个完全不同的东西!

你应该写两个。 @Deprecated Anotation适用于编译器,而@deprecated JavaDoc标签适用于现在为什么不推荐使用的人。

一个例子可以看起来像这样:

 /** * @deprecated We dont need this Method because ... */ @Deprecated public void doStuff(){..} 

这可以很容易地处理一个好的IDE。

Eclipse霓虹灯,例如。 自动添加@Deprecated注释,当我在方法或字段上创build一个javadoc @deprecated。

所以我只是简单地写一个适当的解释,让IDE注意添加@Deprecated注释,一分钟我保存文件。