Il formato generale, dalla sezione @link della documentazione javadoc , è:
Esempi
Metodo nella stessa classe:
/** See also {@link #myMethod(String)}. */
void foo() { ... }
Metodo in una classe diversa, nello stesso pacchetto o importato:
/** See also {@link MyOtherClass#myMethod(String)}. */
void foo() { ... }
Metodo in un pacchetto diverso e non importato:
/** See also {@link com.mypackage.YetAnotherClass#myMethod(String)}. */
void foo() { ... }
Etichetta collegata al metodo, in testo semplice anziché in carattere di codice:
/** See also this {@linkplain #myMethod(String) implementation}. */
void foo() { ... }
Una catena di metodi chiama, come nella tua domanda. Dobbiamo specificare le etichette per i collegamenti a metodi esterni a questa classe, oppure otteniamo getFoo().Foo.getBar().Bar.getBaz()
. Ma queste etichette possono essere fragili; vedere "Etichette" di seguito.
/**
* A convenience method, equivalent to
* {@link #getFoo()}.{@link Foo#getBar() getBar()}.{@link Bar#getBaz() getBaz()}.
* @return baz
*/
public Baz fooBarBaz()
etichette
Il refactoring automatizzato potrebbe non influire sulle etichette. Ciò include la ridenominazione del metodo, della classe o del pacchetto; e cambiando la firma del metodo.
Pertanto, fornire un'etichetta solo se si desidera un testo diverso da quello predefinito.
Ad esempio, potresti collegare dal linguaggio umano al codice:
/** You can also {@linkplain #getFoo() get the current foo}. */
void setFoo( Foo foo ) { ... }
Oppure potresti collegare un esempio di codice con un testo diverso da quello predefinito, come mostrato sopra in "Una catena di chiamate di metodo". Tuttavia, questo può essere fragile mentre le API si stanno evolvendo.
Digita cancellatura e #membro
Se la firma del metodo include tipi con parametri, utilizzare la cancellazione di tali tipi in javadoc @link. Per esempio:
int bar( Collection<Integer> receiver ) { ... }
/** See also {@link #bar(Collection)}. */
void foo() { ... }