Java 9 - расширенная аннотация @Deprecated
Аннотации @Deprecated были введены в версии java 5. Элемент программы, помеченный @Deprecated, означает, что он не должен использоваться по любой из следующих причин:
- Его использование может привести к ошибкам.
- В будущей версии он может быть несовместим.
- Он может быть удален в будущей версии.
- Его заменила лучшая и эффективная альтернатива.
Компилятор генерирует предупреждения всякий раз, когда используется устаревший элемент. В Java 9 в аннотацию @Deprecated внесены два новых улучшения.
forRemoval- Указывает, подлежит ли аннотированный элемент удалению в будущей версии. Значение по умолчанию неверно.
since- Возвращает версию, в которой аннотированный элемент устарел. Значение по умолчанию - пустая строка.
Устарело с
Следующий пример javadoc логического класса в Java 9 иллюстрирует использование атрибута Since в аннотации @Deprecated.
Логический класс

Устарело с forRemoval
Следующий пример javadoc системного класса в Java 9 иллюстрирует использование атрибута forRemoval в аннотации @Deprecated.
Системный класс
