7

我一直想知道如何记录一个覆盖来自基类的消息的方法。通常我会为每个公共方法和一些私有的受保护方法添加一个 java 文档。

但是在 eclipse 中为覆盖方法自动生成一个文档块会产生这样的结果:

/*
 * (non-Javadoc)
 * 
 * @see javax.swing.JComponent#paintComponent(java.awt.Graphics)
 */

这是记录覆盖的好方法吗?我应该从基类继承/复制文档吗?

作为这种特殊情况的文档,您在做什么?我想对所使用的做法进行概述。

4

2 回答 2

10

每种方法——私有的、受保护的公共的——都应该记录在案,描述它的作用。忘记从基类继承文档——如果你愿意,你可以包含一个指向它的链接,但只要有信息表明它覆盖了继承的方法,那么其他人就可以自由地自己查找它。DRY - 不要重复自己 - 仅在一处记录基类方法。

我什至不认为记录它覆盖的方法是好的,因为这可能会改变,如果你在你的类和基类之间的层次结构中插入新类,就很难让它保持最新。只需它覆盖继承方法的信息就足够了。

如果您的方法太复杂而无法在几行注释中记录,那么它们可能太复杂并且应该重构。

于 2009-07-04T03:52:38.570 回答
1

包括 @Override 注释应该足以将好奇的开发人员发送到超级。

于 2009-07-04T04:07:58.447 回答