Какую аннотацию @NotNull Java следует использовать? - PullRequest
869 голосов
/ 11 февраля 2011

Я хочу сделать мой код более читабельным, а также использовать такие инструменты, как проверка кода IDE и / или статический анализ кода (FindBugs и Sonar), чтобы избежать исключений NullPointerExceptions.Многие инструменты кажутся несовместимыми с аннотациями @NotNull / @NonNull / @Nonnull друг друга, и перечисление их всех в моем коде было бы ужасно читать.Какие-нибудь предложения, какой из них является «лучшим»?Вот список эквивалентных аннотаций, которые я нашел:

Ответы [ 21 ]

1 голос
/ 16 июля 2018

Одна из приятных сторон IntelliJ заключается в том, что вам не нужно использовать их аннотации. Вы можете написать свой собственный или использовать любой другой инструмент, который вам нравится. Вы даже не ограничены одним типом. Если вы используете две библиотеки, которые используют разные аннотации @NotNull, вы можете указать IntelliJ использовать обе из них. Для этого перейдите в «Настроить проверки», нажмите «Постоянные условия и исключения» и нажмите кнопку «Настроить проверки». Я использую Nullness Checker везде, где могу, поэтому я настроил IntelliJ для использования этих аннотаций, но вы можете заставить его работать с любым другим инструментом, который вам нужен. (У меня нет мнения о других инструментах, потому что я использую проверки IntelliJ в течение многих лет, и я люблю их.)

...