Od Comparable.compareTo
:
@throws NullPointerException if the specified object is null
Więc IntelliJ wie, że obiekt nie powinien być null
i dodaje @NotNull
adnotacji automatically:
IntelliJ IDEA będzie uważnie przyjrzeć SDK i bibliotek kodu bajtowego i woli automatycznie rozpoznaje te adnotacje, aby później mogły zostać wykorzystane do analizy kodu źródłowego w celu wykrycia miejsc, w których pominięto wartość null.
Twoja metoda nadpisane nie obejmuje tej adnotacji, więc nadpisania to zachowanie składania pustych parametr - wbrew umowie interfejsu Comparable
.
Można to rozwiązać, dodając przed parametrem @NotNull
.
Można również wyłączyć tę kontrolę poprzez naciśnięcie alt + Wprowadź, wybierając ostrzeżenia w menu podręcznym i wybierając Disable inspection
w podmenu.
Aby uzyskać więcej informacji na temat adnotacji, zapoznaj się z Web Help i this thread.
Przeczytaj wszystko o '' @ Nullable'' i '' funkcji @ NotNull'' [tutaj] (https://www.jetbrains.com/idea/documentation/howto.html) –
Duplikat: http://stackoverflow.com/questions/24728627/meaning-of-android-studio-error-not-annotated-parameter-overrides-nonnull-para – davidgiga1993
@ davidgiga1993 Nie duplikat. Nadpisuję metodę, która nie ma adnotacji "@ NotNull". – traveh