Третья разновидность – особенная. Она предназначена для сервисной программы javadoc, которая входит в стандартный комплект jdk. Эта программа предназначена для автоматической генерации описания классов. Javadoc извлекает комментарии из кода и на их основании строит детальное описание классов, которое помещается в файл html. Этот файл в дальнейшем можно использовать как сопроводительную документацию к приложению. Вид файла html, генерируемого автоматически, можно задать как с помощью стандартного шаблона, идущего в комплекте с jdk, так и с помощью своего шаблона (доклета).
Перейдем к синтаксису. Все команды javadoc начинаются комментарием вида /**, а заканчиваются как обычные - */. Существует два основных способа работы с javadoc: встраивание html-текста или использование команд разметки (тэгов) внутри кода. Самостоятельные тэги документации – это команды, которые начинающиеся с символа @ и размещаются с новой строки комментария. Существуют три вида документации в комментариях для разных элементов кода: класса, переменной класса (поля или свойства) и метода. Все они записываются перед определением этих элементов:
/**
Комментарий к классу: Класс HelloWorld
*/
public class Helloworld {
/**комментарий к переменной класса - переменная i */
public int i;
/** комментарий к методу*/
public static void main(String[] args) {
/** nested comment for instruction*/
System.out.println("Hello, World!");
}
}
Теперь нужно определить, как же запустить программу javadoc. При использовании IDE Eclipse следует выполнить следующую команду: Project – Generate Javadoc. При этом будет выведено диалоговое окно, показанное на рис.3. На нынешнем этапе самое главное, что необходимо задать в этом окне – путь к программе javadoc (Javadoc command). Далее щелкаем finish. Сгенерированный файл документации будет находиться в папке doc, которая, в свою очередь, находится в папке, соответствующей проекту.
Рис.3. Диалоговое окно для запуска javadoc в Eclipse
При использовании стандартного доклета описание нашего класса выглядит следующим образом (приведено не полностью):