Not annotated parameter overrides @NonNull parameter
时间: 2023-12-11 16:03:47 浏览: 200
Annotated Nginx Source中文.zip
这个警告表示你在方法的参数上使用了 `@NonNull` 注解,但是在方法的实现中,这个参数没有被正确地标记为非空。这可能会导致空指针异常。
为了解决这个警告,你需要在方法实现中添加空指针检查,或者确保方法实现中正确地使用了 `@NonNull` 注解。如果你确定这个参数不可能为空,可以使用断言来帮助编译器进行检查。
例如,假设你有以下方法:
```
public void doSomething(@NonNull String param) {
// do something with param
}
```
如果你的实现中没有正确地使用 `@NonNull` 注解,你可以像这样添加一个断言:
```
public void doSomething(@NonNull String param) {
assert param != null;
// do something with param
}
```
或者使用空指针检查:
```
public void doSomething(@NonNull String param) {
if (param == null) {
throw new NullPointerException("param is null");
}
// do something with param
}
```
这样可以确保在运行时不会出现空指针异常,并且让编译器忽略这个警告。
阅读全文