Lernpfad:Würfelspiel in Java/Klassendokumentation mit Javadoc: Unterschied zwischen den Versionen

Zur Navigation springen Zur Suche springen
keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 3: Zeile 3:
== Klassendokumentation mit Javadoc ==
== Klassendokumentation mit Javadoc ==


Javadoc ist ein Format, um die Dokumentation von Klassen, Attributen und Methoden direkt im Quelltext zu verfassen.
JavaDoc ist ein Format, um die Dokumentation von Klassen, Attributen und Methoden direkt im Quelltext zu verfassen.
Dadurch ist die Dokumentation einer Methode direkt mit ihrem Quelltext verknüpft. Hält sich ein Programmierer an
Dadurch ist die Dokumentation einer Methode direkt mit ihrem Quelltext verknüpft. Hält sich ein Programmierer an
die Vorgaben des Formats, ergeben sich viele Vorteile:
die Vorgaben des Formats, ergeben sich viele Vorteile:
Zeile 12: Zeile 12:
werden kann. Prominentestes Beispiel ist [https://link.ngb.schule/java8api die offizielle Java API-Dokumentation].
werden kann. Prominentestes Beispiel ist [https://link.ngb.schule/java8api die offizielle Java API-Dokumentation].


== Aufbau eines JavaDoc Kommentars ==
JavaDoc Kommentare nutzen die normale Java-Syntax für mehrzeilige Kommentare mit dem Zusatz, dass der Kommentar
mit zwei Sternchen statt einem eingeleitet wird (<code>/**</code> statt <code>/*</code>). Jede Zeile des Kommentars
wird zusätzlich mit einem Sternchen begonnen. Beendet wird der Kommentar mit dem normalen <code>*/</code>.
Der Kommentar an sich folgt einer festen Struktur:
<syntaxhighlight lang="java" line="1">
/**
* Kurze Beschreibung
* Lange Beschreibung auch über
* mehrere Zeilen. Kann auch
* <b>HTML-Elemente</b> enthalten.
*/
</syntaxhighlight>
Nach der ausführlichen Beschreibung der Klasse oder Methode kann eine Liste von Eigenschaften folgen, die
jeweils mit einem <code>@</code>-Schlüsselwort beginnen.
<syntaxhighlight lang="java" line="1">
/**
* Beispiel für JavaDoc-Eigenschaften
* @author Ngb
* @version 1.0
* @param pMenge Methoden-Parameter, der die Menge beschreibt
* @return Beschreibung des Rückgabetyps
*/
</syntaxhighlight>
Es gibt viele Verschiedene Eigenschaften, die zum Teil nur für Klassen oder Methoden erlaubt sind. Zum
Beispiel macht es keinen Sinn, die <code>@param</code>-Eigenschaft für die Dokumentation von Klassen
zu verwenden (da sie einen Parameter einer Methode beschreibt).
Einige wichtige Eigenschaften sind:
; <code>@author</code>
: Name des oder der Autoren der Klasse. Macht i.d.R. nur Sinn bei
; <code>@version</code>
:
; <code>@param</code>
:
; <code>@return</code>
:
; <code>@see</code>
:
; <code>@link</code>
:
{{Hint:Start}}
Eigenschaften wie <code>@see</code> können auch innerhalb des Langkommentars eingefügt werden. Dann müssen sie
{{Hint:End}}
== Beispiel einer Klasse mit Dokumentation ==
<syntaxhighlight lang="java" line="1">
<syntaxhighlight lang="java" line="1">
/**
/**
Zeile 44: Zeile 99:
* https://www.home.hs-karlsruhe.de/~pach0003/labor_informatik_1/05_Javadoc.pdf
* https://www.home.hs-karlsruhe.de/~pach0003/labor_informatik_1/05_Javadoc.pdf
* http://openbook.rheinwerk-verlag.de/javainsel9/javainsel_05_014.htm#t2t31
* http://openbook.rheinwerk-verlag.de/javainsel9/javainsel_05_014.htm#t2t31
* [[wikipedia:Javadoc]]

Navigationsmenü