JavaDocs的最佳实践-接口、实现还是两者兼而有之?

JavaDocs的最佳实践-接口、实现还是两者兼而有之?,java,Java,我有一个DAO接口和DAO的实现。接口中的Javadoc是Netbeans向实现DAO方法的客户机显示的内容 显然,我需要在接口中维护JavaDocs。但它的实施情况如何?一方面,将它们放在那里很方便,但另一方面,它是重复的,需要在两个地方进行维护 只是想知道其他Java开发人员都做些什么。接口应该包含有关契约的所有信息,基本上是方法的功能、参数描述、返回值等等 除非接口描述中没有明确的额外信息(很少有),否则实现文档应该简单地链接到接口方法 这是我发现在实现者和客户端都最有用的格式。在我的项目

我有一个DAO接口和DAO的实现。接口中的Javadoc是Netbeans向实现DAO方法的客户机显示的内容

显然,我需要在接口中维护JavaDocs。但它的实施情况如何?一方面,将它们放在那里很方便,但另一方面,它是重复的,需要在两个地方进行维护


只是想知道其他Java开发人员都做些什么。

接口应该包含有关契约的所有信息,基本上是方法的功能、参数描述、返回值等等

除非接口描述中没有明确的额外信息(很少有),否则实现文档应该简单地链接到接口方法


这是我发现在实现者和客户端都最有用的格式。

在我的项目中,Eclipse自动创建文档,如下所示:

     /* (non-Javadoc)
     *  @see com.comp.SomeInterface#method(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
     */
    @Override
    public void method(HttpServletRequest arg0, HttpServletResponse arg1)
            throws Exception {
        // TODO Auto-generated method stub

    }

我们已经使用Ant任务创建了javadoc,因此它创建了到接口的链接。

如果实现方法没有提供自己的javadoc,那么仍然会有到接口方法的文档的链接。我一直不明白为什么Eclipse会插入
/*(非Javadoc)@see*/因为Javadocs将自动引用接口的文档

例如:

public interface Named {
  /** Returns the name. */
  public String getName();
}

public class Thing implements Named {
  // note no Javadocs here
  public String getName() {
    return "thing";
  }
}
运行
javadoc
后,
Thing.getName
的javadoc是:

getName

public java.lang.String getName()
    Description copied from interface: Named
    Returns the name.
    Specified by:
        getName in interface Named

界面的链接将在没有Eclipse生成的文档的情况下出现。“我从来都不理解为什么Eclipse会插入”,因为这样您就可以简单地Cmd+单击引用的类并立即访问文档。不适用于JavaDoc,但适用于开发。@mmlac Most IDE(Eclipse)有一个指向定义接口/类的链接