2010-11-09 51 views
9

当你编译你的java文件时,它是否也将你的javadocs和注释嵌入到类文件中?你的javadocs是否被编译到你的类文件中?

例如,如果您有大型javadoc,它会影响类文件的整体大小吗?还是编译器忽略以///*开头的所有内容?

+0

JavaDoc中的'@ deprecated'(不要与'@ Deprecated'混淆)用于设置一个位。 – 2010-11-09 15:08:04

回答

5

您可以告诉编译器将源文件包含在类文件中(javac -g:source)。这意味着源的每一位都会被添加。评论,代码,空白,一切。

如果你这样做,那么源的大小很重要。否则,它不会。

从运行时的角度来看,差异并不重要。

+0

你试过吗?即使设置了“-g:source”,也不包含JavaDocs。我试图用JAD反编译类。 – 2013-10-05 08:12:58

+0

@ctapobep:我刚刚尝试过使用Java 6和7,你说得对:'-g:source'不包括类文件中的源代码。几分钟的推动和谷歌搜索没有说明为什么或这个选项真的做什么: - / – 2013-10-07 13:30:41

7

不,注释并未编译到您的课程文件中。这包括JavaDocs。

相反,您需要在源代码上使用JavaDoc工具(如Sun/Oracle's)来生成文档。

5

不,类文件只是二进制数据。

注释可能会保留(取决于注释)。

注释不会影响类文件的大小。

+0

+1提到注释情况。 – 2010-11-09 15:38:55

相关问题