English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di Base Java

Controllo dei flussi Java

Array Java

Java orientato agli oggetti (I)

Java orientato agli oggetti (II)

Java orientato agli oggetti (III)

Gestione delle Eccezioni Java

Lista Java

Queue Java (coda)

Map di Java

Set di Java

Input/Output (I/O) Java

Reader/Writer Java

Altri argomenti Java

Commenti di documentazione Java

Java supporta tre tipi di commenti. I primi due sono // e /* */, il terzo tipo è il commento descrittivo, che si presenta con /** Inizia con */Fine.

I commenti descrittivi ti permettono di inserire informazioni nel tuo programma. Puoi utilizzare lo strumento javadoc per generare queste informazioni e esportarle in file HTML.

Descrizioni dei commenti che ti permettono di registrare più facilmente le informazioni del tuo programma.

Etichette javadoc

Il software javadoc riconosce le seguenti etichette:

EtichettaDescrizioneEsempio
@autore Identifica l'autore di una classe @autore descrizione
@deprecated Indica una classe o un membro obsoleto @deprecated description
{@docRoot} Indica il percorso della directory radice del documento corrente Directory Path
@exception Segna un'eccezione lanciata da una classe @exception exception-name explanation
{@inheritDoc} Commento ereditato dal superclasse immediato. Eredita un commento dal superclasse immediato.
{@link} Inserisce un collegamento a un altro argomento {@link name text}
{@linkplain} Inserisce un collegamento a un altro argomento, ma il collegamento viene visualizzato in caratteri testuali. Inserisce un collegamento in linea a un altro argomento.
@param Spiega un parametro del metodo @param parameter-name explanation
@return Spiega il tipo di valore di ritorno @return explanation
@see Specificare un collegamento a un altro argomento @see anchor
@serial Spiega un attributo serializzato @serial description
@serialData Spiega i dati scritti tramite i metodi writeObject( ) e writeExternal( ). @serialData description
@serialField Spiega un componente ObjectStreamField @serialField name type description
@since Marcatura quando viene introdotta una modifica specifica @since release
@throws Come il tag @exception. Il tag @throws ha lo stesso significato del tag @exception.
{@value} Visualizza il valore di una costante, che deve essere un attributo statico. Visualizza il valore di una costante, che deve essere un campo statico.
@version Specifica la versione della classe @version info

Commenti del documento

All'inizio /** Dopo, la prima riga o alcune righe descrivono principalmente le classi, le variabili e i metodi.

dopo di essa, puoi includere uno o più di vari tipi di @ etichetta. Ogni @ Le etichette devono iniziare su una nuova riga o immediatamente dopo l'asterisco (*).

Più etichette dello stesso tipo dovrebbero essere raggruppate insieme. Ad esempio, se hai tre @see etichette, puoi metterle una dopo l'altra.

Di seguito è un esempio di commento di descrizione di una classe:

/*** Questa classe disegna un grafico a barre */
* @author w3codebox
* @version 1.2
*/

Cosa produce javadoc

Lo strumento javadoc prende il codice sorgente del tuo programma Java come input e produce alcuni file HTML che contengono i commenti del tuo programma.

Le informazioni di ogni classe saranno in un file HTML separato. javadoc può anche outputpare la struttura ad albero e l'indice degli eredi.

Poiché l'implementazione di javadoc può variare, il lavoro può anche variare. Dovrai controllare la versione del tuo sistema di sviluppo Java e altri dettagli per scegliere la versione di Javadoc appropriata.

Esempio online

Di seguito è un esempio semplice di commento di utilizzo. Nota che ogni commento è davanti al progetto che descrive.

Dopo il trattamento javadoc, i commenti della classe SquareNum saranno trovati in SquareNum.html.

import java.io.*;
 
/**
* Questa classe dimostra i commenti di documentazione
* @author Ayan Amhed
* @version 1.2
*/
public class SquareNum {
   /**
   * Questo metodo restituisce il quadrato di num.
   * Questa è una descrizione multiriga. Puoi usare
   * come molte righe ti piace.
   * @param num Il valore da quadrare.
   * @return Il quadrato del numero.
   */
   public double square(double num) {
      return num * num;
   }
   /**
   * Questa metodo legge un numero dall'utente.
   * @return Il valore input come double.
   * @exception IOException On input error.
   * @see IOException
   */
   public double getNumber() throws IOException {
      InputStreamReader isr = new InputStreamReader(System.in);
      BufferedReader inData = new BufferedReader(isr);
      String str;
      str = inData.readLine();
      return (new Double(str)).doubleValue();
   }
   /**
   * This method demonstrates square().
   * @param args Unused.
   * @return Nothing.
   * @exception IOException On input error.
   * @see IOException
   */
   public static void main(String args[]) throws IOException
   {
      SquareNum ob = new SquareNum();
      double val;
      System.out.println("Enter value to be squared: ");
      val = ob.getNumber();
      val = ob.square(val);
      System.out.println("Squared value is " + val);
   }
}

As follows, use the javadoc tool to process the SquareNum.java file:

$ javadoc SquareNum.java
Loading source file SquareNum.java...
Constructing Javadoc information...
Standard Doclet version 1.5.0_13
Building tree for all the packages and classes...
Generating SquareNum.html...
SquareNum.java:39: warning - @return tag cannot be used\
                      in method with void return type.
Generating package-frame.html...
Generating package-summary.html...
Generazione di package-tree.html...
Generazione di constant-values.html...
Costruzione dell'indice per tutti i pacchetti e le classi...
Generazione di overview-tree.html...
Generazione di index-all.html...
Generazione di deprecated-list.html...
Costruzione dell'indice per tutte le classi...
Generazione di allclasses-frame.html...
Generazione di allclasses-noframe.html...
Generazione di index.html...
Generazione di help-doc.html...
Generazione dello stylesheet.css...
1 avviso
$