我正在记录我开发的Java程序,并想知道如果我只记录超类,是否会为继承的方法(被覆盖)生成JavaDoc?
如果我有一个Vehicle使用drive()方法调用的类,并且Car使用drive()方法覆盖调用的子类,如果没有将Javadoc放入Car类中,那么Vehicle驱动方法的文档是否会包含在Cars驱动方法中?
Ste*_*n C 66
[我]想知道如果我只记录超类,是否会为继承的方法(被覆盖)生成JavaDoc?
是.如果你没有对子类的javadoc注释,将基于超类javadoc生成javadocs.
如果在子类中定义的javadoc,他们将取代继承的javadoc,但可以使用{@inheritDoc}到包括在子类的javadoc各自的超javadoc注释.
参考:
Eic*_*ich 31
如果要使用重写方法的JavaDoc,请使用{@inheritDoc}.F. e.:
/**
  * {@inheritDoc}
  */
@Override
public double getX() { ... }
请注意,几乎每个overriden方法也都继承了上层文档:).您可以在oracle文档中阅读它(感谢提示@Steve Kuo).
Javadoc工具能够在以下两种情况下复制或"继承"类和接口中的方法注释.构造函数,字段和嵌套类不继承文档注释...(1)自动继承注释以填充缺少的文本...(2)使用{@inheritDoc}标记显式继承注释
使用@see,如果你想引用一个类似/重要/ ...方法.java.awt.Point课程示例:
 /**
 * Returns the location of this point.
 * This method is included for completeness, to parallel the
 * <code>getLocation</code> method of <code>Component</code>.
 * @return      a copy of this point, at the same location
 * @see         java.awt.Component#getLocation
 * @see         java.awt.Point#setLocation(java.awt.Point)
 * @see         java.awt.Point#setLocation(int, int)
 * @since       1.1
 */
public Point getLocation() { ... }