2010-11-09 14 views
9

Cuando compila sus archivos java, ¿también incrusta sus javadocs y comentarios en el archivo de clase?¿Tus javadocs se compilan en tus archivos de clase?

Por ejemplo, si tiene javadocs grandes, ¿afecta el tamaño general de su archivo de clase? ¿O el compilador ignora todo lo que comienza con // y /*?

+0

'@ deprecated' en JavaDoc (no confundir con' @ Deprecated') se usa para establecer un bit. –

Respuesta

5

Puede indicar al compilador que incluya las fuentes en el archivo de clase (javac -g:source). Eso significa que se agregará cada bit de la fuente. Comentarios, código, espacio en blanco, todo.

Si lo hace, entonces el tamaño de la fuente es importante. De lo contrario, no es así.

Desde una perspectiva de tiempo de ejecución, la diferencia no importa mucho.

+0

¿Has probado eso? Los JavaDocs no están incluidos incluso si '-g: source' está establecido. Traté de descompilar las clases con JAD. –

+0

@ctapobep: Acabo de probar con Java 6 y 7 y tiene razón: '-g: source' no incluye el código fuente en el archivo de clase. A pocos minutos de pinchar y buscar en Google no apareció por qué o qué hace realmente esta opción: - / –

7

No, los comentarios no se compilan en sus archivos de clase. Esto incluye JavaDocs.

En su lugar, debe utilizar una herramienta JavaDoc (como Sun/Oracle's) en el código fuente para generar la documentación.

5

No, el archivo de clase es solo datos binarios.

Anotaciones puede retener (dependiendo de la anotación).

Los comentarios no afectarán el tamaño del archivo de clase.

+0

+1 por mencionar el caso de las anotaciones. –