在接口中添加Javadoc注释和在实现中添加非Javadoc注释是否正确
大多数IDE在自动生成注释时会为实现生成非JavaDoc注释。具体的方法不应该有描述吗
对于只实现(而不是重写)的方法,当然可以,为什么不呢,特别是如果它们是公共的
如果你有一个压倒一切的情况,你要复制任何文本,那么肯定不是。复制肯定会导致差异。因此,用户对方法的理解可能会有所不同,这取决于他们是在超类型还是子类型中检查方法。使用@inheritDoc或不提供文档-IDE将在其Javadoc视图中使用最低可用文本
另一方面,如果您的覆盖版本在超类型的文档中添加了内容,您可能会遇到麻烦。我在读博士期间研究了这个问题,发现一般来说,如果人们通过超类型调用,他们永远不会意识到覆盖版本中的额外信息
解决这个问题是我构建的原型工具的主要功能之一——无论何时调用一个方法,都会得到一个指示,表明其目标或任何潜在的重写目标是否包含重要信息(例如,冲突行为)。例如,当调用映射上的put时,会提醒您,如果您的实现是树映射,那么您的元素需要具有可比性