当你编译你的java
文件时,它是否也将你的javadocs和注释嵌入到类文件中?你的javadocs是否被编译到你的类文件中?
例如,如果您有大型javadoc,它会影响类文件的整体大小吗?还是编译器忽略以//
和/*
开头的所有内容?
当你编译你的java
文件时,它是否也将你的javadocs和注释嵌入到类文件中?你的javadocs是否被编译到你的类文件中?
例如,如果您有大型javadoc,它会影响类文件的整体大小吗?还是编译器忽略以//
和/*
开头的所有内容?
您可以告诉编译器将源文件包含在类文件中(javac -g:source
)。这意味着源的每一位都会被添加。评论,代码,空白,一切。
如果你这样做,那么源的大小很重要。否则,它不会。
从运行时的角度来看,差异并不重要。
你试过吗?即使设置了“-g:source”,也不包含JavaDocs。我试图用JAD反编译类。 – 2013-10-05 08:12:58
@ctapobep:我刚刚尝试过使用Java 6和7,你说得对:'-g:source'不包括类文件中的源代码。几分钟的推动和谷歌搜索没有说明为什么或这个选项真的做什么: - / – 2013-10-07 13:30:41
不,注释并未编译到您的课程文件中。这包括JavaDocs。
相反,您需要在源代码上使用JavaDoc工具(如Sun/Oracle's)来生成文档。
不,类文件只是二进制数据。
注释可能会保留(取决于注释)。
注释不会影响类文件的大小。
+1提到注释情况。 – 2010-11-09 15:38:55
JavaDoc中的'@ deprecated'(不要与'@ Deprecated'混淆)用于设置一个位。 – 2010-11-09 15:08:04