Ответ 1
От Comparable.compareTo
:
@throws NullPointerException if the specified object is null
Итак, IntelliJ знает, что объект не должен быть null
и автоматически добавляет аннотацию @NotNull
:
IntelliJ IDEA внимательно рассмотрит байт-код SDK и библиотек и автоматически выведет эти аннотации, чтобы впоследствии их можно было использовать для анализа исходного кода, чтобы определить места, где вы упустили нулевое значение.
Ваш метод overriden не включает эту аннотацию, поэтому он переопределяет это поведение, делая параметр nullable - против контракта интерфейса Comparable
.
Вы можете решить эту проблему, добавив @NotNull
перед параметром.
Вы также можете отключить эту проверку, нажав Alt + Enter, выбрав предупреждение во всплывающем меню и выбрав Disable inspection
в подменю.
Ознакомьтесь с веб-справкой и этот поток для получения дополнительной информации о @NotNull
/@NonNull
аннотации.