Định dạng chung, từ phần @link của tài liệu javadoc , là:
Ví dụ
Phương thức trong cùng một lớp:
/** See also {@link #myMethod(String)}. */
void foo() { ... }
Phương thức trong một lớp khác, trong cùng một gói hoặc được nhập:
/** See also {@link MyOtherClass#myMethod(String)}. */
void foo() { ... }
Phương thức trong một gói khác nhau và không được nhập:
/** See also {@link com.mypackage.YetAnotherClass#myMethod(String)}. */
void foo() { ... }
Nhãn được liên kết với phương thức, trong văn bản thuần hơn là phông chữ mã:
/** See also this {@linkplain #myMethod(String) implementation}. */
void foo() { ... }
Một chuỗi các cuộc gọi phương thức, như trong câu hỏi của bạn. Chúng tôi phải chỉ định nhãn cho các liên kết đến các phương thức bên ngoài lớp này, hoặc chúng tôi nhận được getFoo().Foo.getBar().Bar.getBaz()
. Nhưng những nhãn này có thể dễ vỡ; xem "Nhãn" bên dưới.
/**
* A convenience method, equivalent to
* {@link #getFoo()}.{@link Foo#getBar() getBar()}.{@link Bar#getBaz() getBaz()}.
* @return baz
*/
public Baz fooBarBaz()
Nhãn
Tái cấu trúc tự động có thể không ảnh hưởng đến nhãn. Điều này bao gồm đổi tên phương thức, lớp hoặc gói; và thay đổi chữ ký phương thức.
Vì vậy, cung cấp một nhãn chỉ nếu bạn muốn văn bản khác nhau hơn so với mặc định.
Ví dụ: bạn có thể liên kết từ ngôn ngữ của con người sang mã:
/** You can also {@linkplain #getFoo() get the current foo}. */
void setFoo( Foo foo ) { ... }
Hoặc bạn có thể liên kết từ một mẫu mã với văn bản khác với mặc định, như được hiển thị ở trên trong "Chuỗi các cuộc gọi phương thức". Tuy nhiên, điều này có thể dễ vỡ trong khi các API đang phát triển.
Nhập xóa và #member
Nếu chữ ký phương thức bao gồm các loại được tham số hóa, hãy sử dụng xóa các loại đó trong javadoc @link. Ví dụ:
int bar( Collection<Integer> receiver ) { ... }
/** See also {@link #bar(Collection)}. */
void foo() { ... }