我有一个班级(例如)" OverridenArrayList"。这覆盖了普通ArrayList的一些方法。 现在我想生成一个Javadoc,它应该包含我当然改变的方法和一些其他重要的方法,这些方法没有被覆盖(也没有在导出的JavaDoc中生成)。例如" size()"方法
当然我可以覆盖像这样的方法
@Override
public int size() {
return super.size();
}
它也会产生。但如果不仅仅是例如,这有时会有点烦人。 10个重要的方法,我必须在我创建的每个子类中编写这10个方法。
如果有人能告诉我另一种更简单的方法告诉Eclispe它应该产生这些"重要的"那将是很好的。所有子类的方法也是如此。
答案 0 :(得分:1)
我不认为你想要完成的是可能的。 JavaDoc应该如何知道要包含在文档中的方法?但是,默认情况下,您的类'JavaDoc中将包含一个带有所有继承方法的列表。
为了向您的类的用户提供您认为重要的方法的一些提示,您当然可以使用@see
或@link
JavaDoc标记来创建指向继承方法的文档的链接
答案 1 :(得分:0)
无论是否重写方法,都将生成JavaDoc。您需要为需要javadoc生成它的方法提供正确的注释格式。
参考下文: http://www.tutorialspoint.com/java/java_documentation.htm
在你的方法上方添加JavaDoc:
/** documentation */
希望我能正确理解你的问题:)
答案 2 :(得分:0)
您需要使用{@inheritDoc}
tag。
不要忘记使用-sourcepath
并提供相关资源。在这种情况下,您希望从JDK库类复制Javadoc注释。这意味着您需要将JDK源(src.zip)下载并在某处展开。我不确定如何在Eclipse上执行此操作,但如果您要在命令行上执行此操作,则可以执行以下操作:
ArrayList
的类,例如FooList.java
。javadoc -sourcepath jdk-sources -d doc FooList.java
。以下是一个例子:
public class FooList<T> extends ArrayList<T> {
/** This method is a new method, so javadoc should be visible */
public void newMethod() {
}
/** Javadoc is overloaded, since I rewrote the javadoc comments*/
@Override
public int size() {
return super.size();
}
/** <p>
* This is an overloaded method, so javadoc should be visible
* </p>
* {@inheritDoc}
* @return
* {@inheritDoc}
* */
@Override
public T get(int index) {
System.out.println(" foo ....");
return super.get(index);
}
}
在Intellij 中,我看到get
方法的Javadoc(在^ J上),如下所示:
请注意在主体和{@inheritDoc}
中使用@return
。