В документации для @ParametersAreNonnullByDefault
говорится, что:
Эту аннотацию можно применить к пакету, классу или методу, чтобы указать, что параметры метода в этом элементе по умолчанию не равны нулю, если только...
Я не считаю возвращаемый тип/значение метода его параметром. Это только часть его подписи, поэтому для меня это неоднозначно.
руководство по методам Java, похоже, думает так же, как и я.
Как указал мне Иоахим Зауэр в разделе комментариев своего answer, имя @ParametersAreNonnullByDefault
(параметры) должно было явно указал для меня, что эта аннотация не применяется к возвращаемым типам/значениям методов. Я был слеп! :) Спасибо Иоахим!
В свете этого я могу только сказать, что где-то должен существовать @EverythingIsNonnullByDefault
. :)