註釋

宣告註釋應與註釋宣告分開。

@SuppressWarnings("unchecked")
public T[] toArray(T[] typeHolder) {
    ...
}

但是,如果提高可讀性,則可以將註釋單行方法的少量或短註釋放在與該方法相同的行上。例如,有人可能寫道:

@Nullable String getName() { return name; }

為了保持一致性和可讀性,要麼將所有註釋放在同一行,要麼將每個註釋放在單獨的行上。

// Bad.
@Deprecated @SafeVarargs
@CustomAnnotation
public final Tuple<T> extend(T... elements) {
    ...
}

// Even worse.
@Deprecated @SafeVarargs
@CustomAnnotation public final Tuple<T> extend(T... elements) {
    ...
}

// Good.
@Deprecated
@SafeVarargs
@CustomAnnotation
public final Tuple<T> extend(T... elements) {
    ...
}

// Good.
@Deprecated @SafeVarargs @CustomAnnotation
public final Tuple<T> extend(T... elements) {
    ...
}