Dokumentationskommentare

Der folgende Paragraph ist aus dem Javabuch von Guido Krüger übernommen (Kapitel 50.5.3):

Bereits ohne zusätzliche Informationen erstellt javadoc aus dem Quelltext eine brauchbare Beschreibung aller Klassen und Interfaces. Durch das Einfügen von Dokumentationskommentaren kann die Ausgabe zusätzlich bereichert werden. Ein Dokumentationskommentar beginnt mit /** und endet mit */ und ähnelt damit einem gewöhnlichen Kommentar. Er muß im Quelltext immer unmittelbar vor dem zu dokumentierenden Item plaziert werden (einer Klassendefinition, einer Methode oder einer Instanzvariable). Er kann aus mehreren Zeilen bestehen. Die erste Zeile des Kommentars wird später als Kurzbeschreibung verwendet.

Zur Erhöhung der Übersichtlichkeit darf am Anfang jeder Zeile ein Sternchen stehen, es wird später ignoriert. Innerhalb der Dokumentationskommentare dürfen neben normalem Text auch HTML-Tags vorkommen. Sie werden unverändert in die Dokumentation übernommen und erlauben es damit, bereits im Quelltext die Formatierung der späteren Dokumentation vorzugeben. Die Tags <h1> und <h2> sollten möglichst nicht verwendet werden, da sie von javadoc selbst zur Strukturierung der Ausgabe verwendet werden.

javadoc erkennt des weiteren markierte Absätze innerhalb von Dokumentationskommentaren. Die Markierung muß mit dem Zeichen @ beginnen und - abgesehen von Leerzeichen - am Anfang der Zeile stehen. Jede Markierung leitet einen eigenen Abschnitt innerhalb der Beschreibung ein, alle Markierungen eines Typs müssen hintereinanderstehen. Tabelle 50.5 gibt eine Übersicht der wichtigsten Markierungen und beschreibt, wie sie verwendet werden.

Markierung und Parameter Dokumentation Verwendung in
@author name Erzeugt einen Autoreneintrag. Klasse, Interface
@version version Erzeugt einen Versionseintrag. Darf höchstens einmal je Klasse oder Interface verwendet werden. Klasse, Interface
@since jdk-version Beschreibt, seit wann das beschriebene Feature existiert. Klasse, Interface
@see reference Erzeugt einen Querverweis auf eine andere Klasse, Methode oder einen beliebigen anderen Teil der Dokumentation. Gültige Verweise sind:
  • @see java.util.Vector
  • @see Vector
  • @see Vector#addElement
  • @see <a href="Spez.html">Spez</a>
Klasse, Interface, Instanzvariable, Methode
@param name description Parameterbeschreibung einer Methode Methode
@return description Beschreibung des Rückgabewerts einer Methode Methode
@exception classname description Beschreibung einer Ausnahme, die von dieser Methode ausgelöst wird Methode
@deprecated description Markiert eine veraltete Methode, die zukünftig nicht mehr verwendet werden sollte. Methode

Tabelle 50.5: Markierungen in Dokumentationskommentaren