Limbajul java suport trei tipuri de comentarii
- /* comentariu */
Compilatorul ignora tot ce este intre /* si */ - // comentariu
Compilatorul ignora tot ce se afla dupa „//” pana la sfarsitul liniei - /** documentatie */
Acesta este un comentariu pentru documentatie si in general se numeste „doc comment”. Unealta JDK javadoc utilizeaza comentariile de acest tip atunci cand pregateste generarea automata a documentatiei.
Acest tuorial este special pentru a explica ultimul tip de comentarii. Vom vedea in randurile urmatoare cum putem genera o documentatie folositoare pentru codul nostru Java.
Ce este Javadoc?
Javadoc este o unealta ce vine impreuna cu JDK si este folosita pentru a genera documentatia codului Java intr-un format HTML, ceea ce necesita un format predefinit al comentariilor.
Exemplu:
/**
* Programul Tutorial este o aplicatie simpla
* ce va scrie "Hello World!" pe ecran.
*
* @author Tutoriale-Pe.NET
* @version 1.0
* @since 2017-01-31
*/
public class Tutorial{
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
De asemenea, putem include tag-uri specifice codului HTML in interiorul acestui tip de comentariu. De exemplu urmatorul cod foloseste tag-urile <h1>…</h1> pentru heading si <p> pentru a creea un paragraf cu spatiu.
Exemplu:
/**
* <h1>Tutoriale-Pe.NET</h1>
* Programul Tutorial este o aplicatie simpla
* ce va scrie "Hello World!" pe ecran.
* <p>
* Folosind tipul potrivit de comentarii in programul tau
* il face sa para mult mai prietenos si este vazut
* ca un cod de calitate inalta.
*
*
* @author Tutoriale-Pe.NET
* @version 1.0
* @since 2017-01-31
*/
public class Tutorial{
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
Tag-urile Javadoc
Unealta javadoc tool recunoaste urmatoarele tipuri de comentarii:
| Tag | Descriere | Sintaxa |
|---|---|---|
| @author | Adauga autorul clasei | @author Numele Autorului |
| {@code} | Afiseaza textul in acelasi font al codului, fara a-l interpreta ca si limbaj HTML sau ca si tag-uri Javadoc | {@code text} |
| {@docRoot} | Reprezinta calea catre folderul documentatiei din orice pagina generata. | {@docRoot} |
| @deprecated | Adauga un comentariu care sa indice faptul ca acea clasa nu ar mai trebuii sa fie folosita | @deprecated text |
| @exception | Adauga subheading-ul „Throw”s pentru documentatia generata cu numele clasei cat si o descriere. | @exception numele-clasei descriere |
| {@link} | Adauga o legatura catre un anumit pachet, clasa, sau membru dintr-o clasa urmat de o simpla descriere. | {@link pachet.clasa#membru descriere} |
| {@linkplain} | La fel ca si @link, doar ca descrierea este intr-un font normal, nu in fontul specific codului | {@linkplain pachet.clasa#membru descriere} |
| @param | Adauga descrierea unui parametru. Trebuie mai intai sa mentionezi numele parametrului iar mai apoi descrierea acestuia. | @param parameter-name description |
| @return | Adauga o sectiune „Returns” impreuna cu o descriere | @return descriere |
| @see | Adauga heading-ul „See Also” – poti sa pui un link, sau mai multe puncte de referinta. | @see referinta |
| @since | Adauga subheading-ul „Since” alaturi de descrierea mentionata | @since descriere |
| @throws | Tagurile @throws si @exception sunt sinonime (= fac acelasi lucru)/ | @throws numele-clasei descriere |
| @version | Adauga un subheading „Version” in care este specificat un text catre documentatia deja generata atunci cand folosim optiunea -version. | @version text |
*Acestea NU sunt toate tag-urile Javadoc, sunt doar cateva dintre cele mai utilizate!
Exemplu
Urmatorul program foloseste cateva dintre cele mai importante tag-uri disponibile pentru documentatie. Puteti folosii si alte tag-uri, in functie de necesitatile voastre.
Documentatia despre clasa AdunaNumere va fi exportata intr-un fisier HTML denumit AdunaNumere.html dar in acelasi timp un fisier master se va creea cu numele index.html
import java.io.*;
/**
* <h1>Tutoriale-Pe.NET</h1>
* Programul Tutorial este o aplicatie simpla
* ce va scrie "Hello World!" pe ecran.
* <p>
* Folosind tipul potrivit de comentarii in programul tau
* il face sa para mult mai prietenos si este vazut
* ca un cod de calitate inalta.
*
*
* @author Tutoriale-Pe.NET
* @version 1.0
* @since 2017-01-31
*/
public class AdunaNumere{
/**
* Aceasta functie este folosita pentru a aduna
* doua numere intregi - este cea mai simpla
* functie pe care o puteam creea ca sa ne folosim
* de cateva tag-uri Javadoc.
* @param numarulA Acesta este primul parametru din functia aduna
* @param numarulB Aceste este al doilea paramestru din functia aduna
* @return int Aceasta functie returneaza suma celor doi parametrii.
*/
public int aduna(int numarulA, int numarulB) {
return numarulA + numarulB;
}
/**
* Aceasta este functia main in care folosim functia aduna
* @param args Nefolosite.
* @exception IOException atunci cand avem erori la prelucrarea datelor.
* @see IOException
*/
public static void main(String args[]) throws IOException {
AdunaNumere obj = new AdunaNumere();
int sum = obj.aduna(80, 19);
System.out.println("Suma numerelor 80 si 19 este: " + sum);
}
}
Acum intram in Command Prompt (CMD) si scriem javadoc AdunaNumere.java, si o sa vedem urmatorul ecran:
Pentru cei care vor sa vada rezultatul final, pot sa dea click aici: AdunaNumere.
Daca aveti nelamuriri sau intrebari, va asteptam cu drag pe Facebook pentru a clarifica orice problema.
