Ответ 1
@Deprecated
- это аннотация, которая считывается компилятором, используемая для обозначения метода, устаревшего для компилятора, и генерирует устаревание предупреждение о компиляции, если этот метод используется.
@Deprecated
- это тег javadoc, используемый для предоставления документации об устаревании. Вы можете использовать его, чтобы объяснить, почему метод устарел и предложить альтернативу. Имеет смысл использовать этот тег в сочетании с аннотацией @Deprecated.
Пример использования:
/**
* This method does ...
* @deprecated As of <product> <version>, because ... use
* {@link #replacementMethod()} instead.
*/
@Deprecated
public void deprecatedMethod() {
// ...
}
Ниже приведено руководство по устареванию, проверьте его для получения дополнительной информации.
Чтобы более точно ответить на ваш вопрос, вы должны использовать либо @Deprecated
, либо и то, и другое, потому что не имеет смысла, что вы хотите, чтобы эта информация была ограничена документацией, а удерживая ее от компилятора. @Deprecated
обозначает ваш метод как устаревший для любого инструмента, который его интересует (например, IDE), поскольку он доступен во время выполнения и времени компиляции. Кроме того, инструмент javadoc замечает @Deprecated
, даже если вы не добавляли никакой информации об устаревании с помощью @Deprecated
.
Простое документирование ваших методов как устаревших вместо их аннотирования означает, что пользователям придется вручную искать использование вместо использования таких инструментов, как компилятор или их собственные инструменты.