我有2节课。第一个包含已弃用的方法。第二个类实例化第一个类并使用其弃用的方法。
编译器确实显示警告但是:
问题:为什么在运行javadoc Test.java
后,生成的Java文档中未列出已弃用的方法?
以下是代码:
import java.lang.annotation.*;
class Tester{
private int a = 1;
/**
* @deprecated
* This is deprecated because I do not like it
*/
@Deprecated
public void afficher(){
System.out.println("a is: " + a);
}
}
public class Test{
public static void main(String[] args){
Tester T = new Tester();
T.afficher();
}
}
以下是生成的Java文档文件的屏幕截图,其中不再列出已弃用的方法:
答案 0 :(得分:3)
正如评论中所指出:课程Tester
将不会被记录,因为它不被视为与javadoc
相关。
默认情况下,仅收集public
或protected
文档(http://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html)。
更改其可见性(例如,将其设为protected
或public
)或生成带有标记-package
或-private
的javadoc。但请注意,您可能会生成大量文档,而您可能根本不需要这些文档。
javadoc -package Test.java
答案 1 :(得分:1)
Javadoc仅记录公共类。您的已弃用方法的类不公开,因此不会记录。
javadoc Test.java
为Test类生成文档。您已弃用的方法位于Tester类中。
答案 2 :(得分:1)
-public: Shows only public classes and members.
-protected: Shows only protected and public classes and members. This is the default.
-package: Shows only package, protected, and public classes and members.
-private: Shows all classes and members.
所以用javadoc -package -d * .java
调用它