Загальний формат із розділу @link документації на javadoc :
Приклади
Метод у тому ж класі:
/** See also {@link #myMethod(String)}. */
void foo() { ... }
Метод в іншому класі, або в одній упаковці, або імпортованому:
/** See also {@link MyOtherClass#myMethod(String)}. */
void foo() { ... }
Спосіб у іншій упаковці, а не імпортований:
/** See also {@link com.mypackage.YetAnotherClass#myMethod(String)}. */
void foo() { ... }
Мітка, пов'язана з методом, у простому тексті, а не в шрифті коду:
/** See also this {@linkplain #myMethod(String) implementation}. */
void foo() { ... }
Ланцюжок методів викликів, як у вашому питанні. Ми повинні вказати мітки для посилань на методи поза цим класом, або ми отримаємо getFoo().Foo.getBar().Bar.getBaz()
. Але ці мітки можуть бути крихкими; див. "Етикетки" нижче.
/**
* A convenience method, equivalent to
* {@link #getFoo()}.{@link Foo#getBar() getBar()}.{@link Bar#getBaz() getBaz()}.
* @return baz
*/
public Baz fooBarBaz()
Мітки
Автоматизоване рефакторинг може не впливати на етикетки. Це включає перейменування методу, класу чи пакета; та зміна підпису методу.
Тому вкажіть мітку лише в тому випадку, якщо ви хочете, щоб текст був іншим, ніж за замовчуванням.
Наприклад, ви можете зв’язати з людської мови на код:
/** You can also {@linkplain #getFoo() get the current foo}. */
void setFoo( Foo foo ) { ... }
Або ви можете зв’язати з зразка коду текст, відмінний від типового, як показано вище у розділі "Ланцюжок викликів методу". Однак це може бути неміцним, коли API розвиваються.
Наберіть стирання та #member
Якщо підпис методу включає параметризовані типи, використовуйте стирання цих типів у javadoc @link. Наприклад:
int bar( Collection<Integer> receiver ) { ... }
/** See also {@link #bar(Collection)}. */
void foo() { ... }