2010-11-09 6 views
9

Podczas kompilowania plików java, czy osadza on również pliki javadocs i komentarze w pliku klasy?Czy twoje javadocs są kompilowane do plików klas?

Na przykład, jeśli masz duże javadocs, czy wpływa to na ogólny rozmiar pliku klasy? Czy też kompilator ignoruje wszystko zaczynające się od // i /*?

+0

'@ przestarzałe' w JavaDoc (nie mylić z' @ Przestarzałe') jest używane do ustawienia bitów. –

Odpowiedz

5

Możesz powiedzieć kompilatorowi, aby uwzględnić źródła w pliku klasy (javac -g:source). Oznacza to, że każdy kawałek źródła zostanie dodany. Komentarze, kod, spacje, wszystko.

Jeśli to zrobisz, liczy się rozmiar źródła. W przeciwnym razie nie.

Z perspektywy czasu wykonywania różnica nie ma większego znaczenia.

+0

Czy próbowałeś tego? JavaDocs nie są uwzględniane, nawet jeśli ustawione jest '-g: source'. Próbowałem dekompilować klasy przy użyciu JAD. –

+0

@ctapobep: Próbowałem tylko z Java 6 i 7 i masz rację: '-g: source' nie zawiera kodu źródłowego w pliku klasy. Kilka minut popychania i szukania w Google nie sprawdziło, dlaczego tak naprawdę działa ta opcja: - / –

7

Nie, komentarze nie są wkompilowane w pliki zajęć. Obejmuje to JavaDocs.

Zamiast tego należy użyć narzędzia JavaDoc (takiego jak Sun/Oracle's) na kodzie źródłowym, aby wygenerować dokumentację.

5

Nie, plik klasy jest po prostu danymi binarnymi.

Adnotacje mogą być przechowywane (w zależności od adnotacji).

Komentarze nie mają wpływu na rozmiar pliku klasy.

+0

+1 za podanie wzmianki o adnotacjach. –

Powiązane problemy